{"version":3,"sources":["components/Class.js","DEFAULTS.js","Builds.js","skilltree/skillTree.js","skilltree/skillTreeSelector.js","skilltree/skillTreeEditor.js","TestHeader.js","components/ExpandTooltip.js","TestPanel.js","App.js","reportWebVitals.js","index.js"],"names":["Class","p","CLASSES","GetData","undefined","useIDs","class_obj","name","style","height","showLoadingAnimation","ready","type","rows","alt","src","process","icon","hideName","DisplayIcon","length","includes","axios","require","Build","PANELPATHWBUILD","build","buildData","data","JSON","parse","to","replace","id","className","build_name","creator","likes","class1","level","class2","secondaryLevel","created_on","weaponBaseName","weaponExistenceID","armor1Name","armor2Name","armor3Name","Builds","BACKENDURL","useState","builds","setBuilds","sort","setSort","filter","setFilter","filter_type","setFilterType","page","setPage","finished","setFinished","useEffect","get","encodeURI","then","catch","err","finally","value","onChange","f","currentTarget","map","item","for","placeholder","SkillTree","canvasRef","useRef","width","setWidth","setHeight","gridSizeX","gridDimensionsX","gridPaddingX","gridSizeY","Math","ceil","gridDimensionsY","halflineheight","gridPaddingY","skillLines","context","current","getContext","clearRect","fillStyle","strokeStyle","lineWidth","setLineDash","lineDash","y","line","x","split","char","padX","padY","beginPath","moveTo","lineTo","stroke","fillRect","ref","children","SkillTreeSelector","skillList","setSkillList","cl","callback","Number","position","left","ADJUSTMENT","top","defaultValue","ch","skillCallback","skill","Object","keys","class_id","SkillTreeEditor","useMemo","firstLoad","setFirstLoad","classList","setClassList","skillTreeData","setSkillTreeData","setCl","lineColor","setLineColor","setLineWidth","dimensionX","setDimensionX","dimensionY","setDimensionY","setGridSizeX","setGridSizeY","setGridPaddingX","setGridPaddingY","renderedInputs","setRenderedInputs","skillLinesTemp","setSkillLinesTemp","setSkillLines","skillData","setSkillData","message","setMessage","loading","setLoading","setHalfLineHeight","GetSkills","useCallback","filtered","found","skill_data","line_color","line_width","gridsizex","gridsizey","gridpaddingx","gridpaddingy","skillTreeString","push","repeat","controls","string","stringLine","newSkillData","s","join","newSkill","htmlFor","isNaN","c","onClick","post","pass","password","slice","str","color","setUpdate","control","i","Fragment","cookies","TestHeader","LOGGEDINUSER","LOGGEDINHASH","avatar","setAvatar","username","setUsername","recoveryhash","verified","href","ExpandTooltip","UncontrolledTooltip","fade","placement","EditBox","timer1","setTimeout","document","getElementById","focus","select","clearTimeout","edit","max","min","onKeyDown","e","key","setEdit","maxLength","maxlength","onBlur","setName","originalName","EditBoxInput","setData","prefix","PageControlButton","onPageChange","pageName","setCurrentPage","currentPage","pageDisplay","PageControl","pages","pageNames","EditableClass","setClassNameSetter","editClass","setClassSelectWindowOpen","PopupWindow","ariaHideApp","isOpen","modalOpen","onRequestClose","setModalOpen","shouldFocusAfterRender","shouldCloseOnOverlayClick","shouldCloseOnEsc","overlayClassName","title","showCloseButton","SelectorWindow","onModalOpen","itemList","setItemList","tabPage","setTabPage","sortItems","sortSelector","setSortSelector","dataFunction","filterFunction","searchFieldFunction","a","b","sortOrderFunction","displayFunction","footer","LeftButton","RightButton","ClassSelectorWindow","setTitle","setEditClass","pageSetter","dat1","class","subClass","setClassName","setSubClassName","GetSpecialWeaponName","special_name","SkillBox","gridArea","String","fromCharCode","charCodeAt","skillPointData","boxId","maxPoints","temp","points","tempData","setPoints","setSkillPointData","SkillTreeBoxes","GetHighestLevel","skillInfo","highestLevel","class_skill_id","skillTreeSkillData","splitter","numb","SkillTreeContainer","setSkillTreeSkillData","skillTreeLineColor","setSkillTreeLineColor","skillTreeLineWidth","setSkillTreeLineWidth","skillTreeDimensionX","setSkillTreeDimensionX","skillTreeDimensionY","setSkillTreeDimensionY","skillTreeGridSizeX","setSkillTreeGridSizeX","skillTreeGridSizeY","setSkillTreeGridSizeY","skillTreeGridPaddingX","setSkillTreeGridPaddingX","skillTreeGridPaddingY","setSkillTreeGridPaddingY","skillTree","FoodItem","dmg_res","hp","hp_recovery","potency","pp","pp_consumption","pp_recovery","weak_point_dmg","rarity","food_type","modifyPoints","boosts","val","stopPropagation","FoodPopupWindow","foodPointData","setFoodPointData","FOODCOUNT","reduce","total","food","foodName","add","foodMenuWindowOpen","setFoodMenuWindowOpen","prevFoodPointData","searchText","trim","toLowerCase","itemA","itemB","localeCompare","substr","lastIndexOf","popularity","TestPanel","BUILDID","useParams","history","useHistory","location","useLocation","APP_TITLE","bpGraphMax","setbpGraphMax","hpGraphMax","sethpGraphMax","ppGraphMax","setppGraphMax","atkGraphMax","setatkGraphMax","defGraphMax","setdefGraphMax","author","setAuthor","buildName","setbuildName","subclassName","setLevel","setsecondaryLevel","effectPage","setEffectPage","weaponPage","setWeaponPage","statPage","setStatPage","classSelectWindowOpen","classSkillTreeWindowOpen","setClassSkillTreeWindowOpen","treePage","setTreePage","weaponSelectWindowOpen","setWeaponSelectWindowOpen","armorSelectWindowOpen","setArmorSelectWindowOpen","augmentSelectWindowOpen","setAugmentSelectWindowOpen","augmentDetailsWindowOpen","setAugmentDetailsWindowOpen","selectedWeapon","setSelectedWeapon","selectedArmor1","setSelectedArmor1","selectedArmor2","setSelectedArmor2","selectedArmor3","setSelectedArmor3","armorSlotSelection","setArmorSlotSelection","classNameSetter","prevSkillPointData","setPrevSkillPointData","prevPoints","setPrevPoints","setPrevFoodPointData","BUFFS","setBUFFS","buildLoad","setBuildLoad","liked","setLiked","rarityCheck","v","bp","pointsArr","pointsDataArr","dat","weapon_type","weaponType","weapon","potential","potential_id","potential_all","potential_tooltip","pot","existence_data","Array","isArray","weapon_existence_data","weapon_type_id","weapon_id","console","log","boost_prefixes","boost_suffixes","categories","forEach","count","amount","finalObj","from","CalculateBuffs","Helmet","property","content","marginLeft","marginRight","fontSize","border","newSkillObj","deepCopySkills","textAlign","saveObj","stringify","match","matchPath","pathname","path","exact","strict","SaveData","statDisplayAtk","def","weaponUp1","toFixed","weaponUp3","burnResist","shockResist","panicResist","stunResist","damageResist","background","weaponUp2","freezeResist","blindResist","poisonResist","padding","lineHeight","fontFamily","atk","target","description","it","ii","armor","slot","mel_dmg","rng_dmg","tec_dmg","REACT_APP_GITPOD_WORKSPACE_URL","REACT_APP_BACKENDURL","GetBackendURL","TESTMODE","Box","Table","classes","InputBox","setValue","failed","setFailed","sending","setSending","changeFunc","callback4","blurFunc","callback3","keydownFunc","callback2","disabled","lockSubmission","includeBlankValue","TableEditor","initialVals","fields","setFields","update","useReducer","state","field","submitVals","setSubmitVal","dependencies","setDependencies","importAllowed","setImportAllowed","setLockSubmission","dependency_map","cols","col","promise_list","Promise","allSettled","reader","FileReader","onload","ev","promises","result","columns","skip_empty_lines","entry","dataTypeID","readAsText","files","opacity","accept","checked","delete","alert","SubmitDeletion","scope","display","response","patch","patchValue","blur","DatabaseEditor","databases","setDatabases","backgroundColor","db","label","datname","dateStr","date","Date","database","AdminPanel","setVerified","setPassword","navigationData","url","table","hr","duplicate","render","DATA","setTESTMODE","nav","EditStatBox","DamageCalculator","augmentData","setAugmentData","character","augments","armor1","armor2","armor3","searchFields","variable","equip","variance","setAugDmgVariance","rawDmg","setRawDmg","weaponTotalAtk","setWeaponTotalAtk","weaponBaseAtk","setWeaponBaseAtk","weaponEnhanceLv","setweaponEnhanceLv","dmgVariance","setDmgVariance","weaponDmgVariance","setWeaponDmgVariance","augDmgVariance","baseAtk","setBaseAtk","enemyDef","setEnemyDef","multipliers","setMultipliers","atkmult","setAtkMult","partmult","setPartMult","elementalWeaknessMult","setElementalWeaknessMult","mainClassWeaponBoost","setMainClassWeaponBoost","classSkillMult","setClassSkillMult","equipMult","setEquipMult","augmentEquipMult","setAugmentEquipMult","potencyFloorEquipMult","setPotencyFloorEquipMult","elementalWeaponEquipMult","setElementalWeaponEquipMult","critMult","setCritMult","appropriateDistance","setAppropriateDistance","foodBoost","setFoodBoost","fieldEffects","setFieldEffects","statusAilments","setStatusAilments","enemyCorrectionMult","setEnemyCorrectionMult","highLevelEnemy","setHighLevelEnemy","FormField","tooltip","VerifyLogin","LoginForm","query","urlSearchParams","URLSearchParams","window","search","fromEntries","entries","useHashQuery","rememberMe","setRememberMe","error","setError","SubmitLogin","md5","setLOGGEDINUSER","setLOGGEDINHASH","set","responseGoogle","profileObj","googleId","imageUrl","email","tokenId","userID","remove","DiscordLoginButton","checkForLogin","setCheckForLogin","code","token","REACT_APP_LOCAL_REDIRECT","marginTop","theme","clientId","buttonText","onSuccess","onFailure","cookiePolicy","RegisterForm","password2","setPassword2","setEmail","Error","App","secondaryClassName","classLv","secondaryClassLv","setstatDisplayAtk","setDATA","DATAID","setDATAID","PANELPATH","row","clear","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","StrictMode"],"mappings":"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","file":"static/js/main.25745d1f.chunk.js","sourcesContent":["\nimport ReactPlaceholder from 'react-placeholder';\nimport \"react-placeholder/lib/reactPlaceholder.css\";\n\nfunction Class(p) {\n const CLASSES = p.GetData(\"class\",undefined,undefined,p.useIDs??false)\n const class_obj = CLASSES[p.name]\n return {class_obj?<>\"\"{!p.hideName&&class_obj.name}:<>}\n }\n\nexport default Class;","const NICONICONII = process.env.PUBLIC_URL+\"/icons/nicodotpng.png.png\"\n\nfunction DisplayIcon(icon) {\n //console.log(icon)\n return icon&&icon.length>0?icon.includes(\"http\")?icon:process.env.PUBLIC_URL+icon:NICONICONII\n}\n\nexport {NICONICONII,DisplayIcon};","import { useEffect,useState } from 'react'\nimport Class from './components/Class';\nimport ReactPlaceholder from 'react-placeholder';\nimport \"react-placeholder/lib/reactPlaceholder.css\";\nimport {HandThumbsUp} from 'react-bootstrap-icons'\nimport { DisplayIcon } from './DEFAULTS';\nimport { HashLink as Link } from 'react-router-hash-link';\nconst axios = require('axios');\n\nfunction Build(p) {\n const {PANELPATHWBUILD} = p\n const {build} = p\n const {GetData} = p\n const buildData = build.data?build.data[0]==='{'?JSON.parse(build.data):{}:{}\n return
\n
\n \n
\n
#{build.id}

 {build.build_name}

(Created by \"\"/{build.creator})
\n
{build.likes}
\n
\n
{buildData?.level}
\n
{buildData?.secondaryLevel}
\n
{build.created_on}
\n
\n
\n
\n \"\"\n
\n
\n \"\"\n
\n
\n \"\"\n
\n
\n \"\"\n
\n
\n {/*JSON.stringify(build)*/}\n
\n \n
\n
\n
\n
\n}\n\nfunction Builds(p) {\n\n const {GetData,BACKENDURL,PANELPATHWBUILD} = p\n const [builds,setBuilds] = useState([])\n const [sort,setSort] = useState(\"date_updated\")\n const [filter,setFilter] = useState(\"\")\n const [filter_type,setFilterType] = useState(\"author\")\n const [page,setPage] = useState(0)\n const [finished,setFinished] = useState(false)\n //const [totalPages,setTotalPages] = useState(0)\n //const [pageSelector,setPageSelector] = useState(0)\n\n\n useEffect(()=>{\n setFinished(false)\n setPage(0)\n axios.get(`${BACKENDURL}/getBuilds?sort_type=${sort}${filter_type!==\"\"?`&filter_type=${filter_type}`:\"\"}${filter_type!==\"\"?`&filter=${encodeURI(filter)}`:\"\"}${page!==0?`&offset=${page}`:\"\"}`)\n .then((data)=>{\n setBuilds(data.data)\n })\n .catch((err)=>{\n\n })\n .finally(()=>{\n setFinished(true)\n })\n },[BACKENDURL,sort,filter_type,filter,page])\n\n return <>\n
\n
\n

Builds List

\n
\n
\n
\n Sort By:\n \n
\n
\n \n \n
\n
\n {{setFilter(f.currentTarget.value)}} />}\n
\n
\n \n {builds.map((build)=>)}\n \n
\n}\n\nexport default Builds;","import { useRef,useEffect,useState } from 'react';\n\nfunction SkillTree(p) {\n const canvasRef = useRef(null)\n const [width,setWidth] = useState(0)\n const [height,setHeight] = useState(0)\n \n useEffect(() => {\n setWidth(p.gridSizeX*p.gridDimensionsX+p.gridPaddingX*(p.gridDimensionsX-1))\n setHeight(p.gridSizeY*Math.ceil(p.gridDimensionsY/2)+p.halflineheight*Math.ceil((p.gridDimensionsY-1)/2)+p.gridPaddingY*(p.gridDimensionsY-1))\n }, [p.halflineheight,p.skillLines,p.gridSizeX,p.gridSizeY,p.gridPaddingX,p.gridPaddingY,p.gridDimensionsX,p.gridDimensionsY])\n\n useEffect(()=>{\n const canvas = canvasRef.current\n const context = canvas.getContext('2d')\n context.clearRect(0,0,width,height)\n context.fillStyle = 'rgba(100,100,100,0.5)'\n context.strokeStyle=p.strokeStyle\n context.lineWidth=p.lineWidth //https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/lineWidth\n context.setLineDash(p.lineDash) //https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/setLineDash\n var y=0\n for (var line of p.skillLines) {\n var x=0\n for (var char of line.split('')) {\n var padX = x!==0?p.gridPaddingX*x:0\n var padY = y!==0?p.gridPaddingY*y:0\n switch (char) {\n case \"─\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"│\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();break;\n case \"└\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"┌\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();break;\n case \"┘\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"┐\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();break;\n case \"├\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();break;\n case \"┤\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"┬\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.stroke();break;\n case \"┴\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"┼\":context.beginPath();context.moveTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)-p.gridPaddingY);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX/2,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+p.gridSizeY+p.gridPaddingY);context.moveTo(x*p.gridSizeX+(padX)-p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.lineTo(x*p.gridSizeX+(padX)+p.gridSizeX+p.gridPaddingX,Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY)+(y%2===1?p.halflineheight:p.gridSizeY)/2);context.stroke();break;\n case \"□\":context.clearRect(x*p.gridSizeX+(padX), Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY), p.gridSizeX, y%2===1?p.halflineheight:p.gridSizeY);context.fillRect(x*p.gridSizeX+(padX), Math.ceil(y/2)*p.gridSizeY+Math.ceil((y-1)/2)*p.halflineheight+(padY), p.gridSizeX, y%2===1?p.halflineheight:p.gridSizeY);break;\n default:\n }\n x++\n }\n y++\n }\n },[width,height,p.gridSizeX,p.gridSizeY,p.gridPaddingX,p.gridPaddingY,p.lineDash,p.lineWidth,p.skillLines,p.strokeStyle,p.halflineheight])\n \n return {p.children}\n}\n\nexport {SkillTree}","import { useEffect, useState } from 'react'\n\nfunction SkillTreeSelector(p) {\n\n const { GetData } = p\n\n const [skillList,setSkillList] = useState([])\n\n useEffect(()=>{\n setSkillList(GetData(\"class_skill\"))\n },[p.cl,GetData])\n\n return <>\n \n {p.defaultValue==='□'&&}\n \n\n} \n\nexport {SkillTreeSelector}","import { SkillTree } from \"./skillTree\";\nimport React, { useEffect,useState,useMemo,useCallback } from \"react\";\nimport { SkillTreeSelector } from \"./skillTreeSelector\";\nimport axios from \"axios\";\n\nfunction SkillTreeEditor(p) {\n const { GetData } = p\n\n const ADJUSTMENT = useMemo(()=>[-32,32],[])\n\n const [firstLoad,setFirstLoad] = useState(true)\n\n const [classList,setClassList] = useState({})\n const [skillTreeData,setSkillTreeData] = useState({})\n const [cl,setCl] = useState(-1)\n const [lineColor,setLineColor] = useState(\"#000000\")\n const [lineWidth,setLineWidth] = useState(3)\n const [dimensionX,setDimensionX] = useState(6)\n const [dimensionY,setDimensionY] = useState(6)\n const [gridSizeX,setGridSizeX] = useState(80)\n const [gridSizeY,setGridSizeY] = useState(60)\n const [gridPaddingX,setGridPaddingX] = useState(10)\n const [gridPaddingY,setGridPaddingY] = useState(10)\n const [renderedInputs,setRenderedInputs] = useState([])\n const [skillLinesTemp,setSkillLinesTemp] = useState([])\n const [skillLines,setSkillLines] = useState([])\n const [skillData,setSkillData] = useState([])\n const [message,setMessage] = useState(\"\")\n const [loading,setLoading] = useState(false)\n const [halflineheight,setHalfLineHeight] = useState(60)\n\n const GetSkills = useCallback((x,y)=>{\n var filtered = skillData.filter((skill)=>Number(skill.split(\",\")[0])===Number(x)&&Number(skill.split(\",\")[1])===Number(y))\n if (filtered.length>0) {\n return filtered[0]\n } else {\n return \"\"\n }\n },[skillData])\n\n function SaveSkillTrees() {\n axios.post(p.BACKENDURL+\"/saveskilltree\",{\n pass:p.password,\n data:skillLines.slice(0,dimensionY).map((str)=>str.slice(0,dimensionX)).join(','),\n skill_data:skillData.join(';'),\n line_color:lineColor,\n line_width:lineWidth,\n gridsizex:gridSizeX,\n gridsizey:gridSizeY,\n gridpaddingx:gridPaddingX,\n gridpaddingy:gridPaddingY,\n halflineheight:halflineheight,\n class_id:cl\n })\n .then((data)=>{\n if (data.data===\"OK!\") {\n setMessage({\"Successfully saved skill tree for \"+p.GetData(\"class\",undefined,undefined,true)[cl].name+\"!\"})\n p.setUpdate(true)\n }\n })\n .catch((err)=>{\n setMessage({err.message})\n })\n .then(()=>{\n setLoading(false)\n })\n }\n\n useEffect(()=>{\n setClassList(GetData(\"class\",undefined,undefined,true))\n setSkillTreeData(GetData(\"skill_tree_data\",undefined,undefined,true))\n },[GetData])\n\n useEffect(()=>{\n var keys = Object.keys(skillTreeData)\n var found = false\n for (var id of keys) {\n //console.log(cl+\"/\"+skillTreeData[id].class_id)\n if (Number(skillTreeData[id].class_id)===Number(cl)) {\n var data = skillTreeData[id].data?.split(',')\n var skill = skillTreeData[id].skill_data?.split(';')\n setSkillLinesTemp(data)\n setSkillData(skill)\n setDimensionX(data[0].length)\n setDimensionY(data.length)\n setLineColor(skillTreeData[id].line_color)\n setLineWidth(skillTreeData[id].line_width)\n setGridSizeX(skillTreeData[id].gridsizex)\n setGridSizeY(skillTreeData[id].gridsizey)\n setGridPaddingX(skillTreeData[id].gridpaddingx)\n setGridPaddingY(skillTreeData[id].gridpaddingy)\n setHalfLineHeight(skillTreeData[id].halflineheight)\n found=true\n }\n }\n if (!found) {\n setSkillLinesTemp([])\n setSkillData([])\n setDimensionX(6)\n setDimensionY(6)\n }\n },[skillTreeData,cl])\n\n useEffect(()=>{\n if (firstLoad) {\n setCl(Number(Object.keys(classList)[0]))\n setFirstLoad(false)\n }\n },[classList,firstLoad])\n\n useEffect(()=>{\n var skillTreeString = [...skillLinesTemp]\n\n while (skillTreeString.length{\n var controls = []\n for (var y=0;y{\n var string = [...skillLines]\n var stringLine = string[y].split('')\n var newSkillData = [...skillData]\n stringLine[x] = char\n if (char!==\"□\") {\n for (var s in newSkillData) {\n var split = newSkillData[s].split(',')\n if (Number(split[0])===Number(x)&&Number(split[1])===Number(y)) {\n newSkillData[s]=\"\"\n setSkillData(newSkillData)\n break;\n }\n }\n }\n string[y] = stringLine.join('')\n setSkillLinesTemp(string)\n }\n } skill={GetSkills(x,y)} skillCallback={(x,y,skill)=>{\n var newSkillData = [...skillData]\n var found=false\n var newSkill = x+\",\"+y+\",\"+skill\n for (var s in newSkillData) {\n var split = newSkillData[s].split(',')\n if (Number(split[0])===Number(x)&&Number(split[1])===Number(y)) {\n newSkillData[s]=newSkill\n found=true\n break;\n }\n }\n if (!found) {\n newSkillData.push(newSkill)\n }\n setSkillData(newSkillData)\n }} ADJUSTMENT={ADJUSTMENT} x={x} y={y} gridSizeX={gridSizeX} gridSizeY={gridSizeY} padX={padX} padY={padY} halflineheight={halflineheight}/>)\n }\n }\n }\n setRenderedInputs(controls)\n },[skillLines,gridSizeX,gridSizeY,gridPaddingX,gridPaddingY,cl,dimensionY,dimensionX,skillData,halflineheight,GetData,ADJUSTMENT,GetSkills])\n\n return <>\n {loading?\"\"/:<>\n

{message}

\n \n
\n
\n {p.GetData(\"class\",undefined,undefined,true)[cl]?.name&&}\n
\n \n {renderedInputs.map((control,i)=>{control})}\n
\n
\n
\n {setLineColor(f.currentTarget.value)}}/>
\n {setLineWidth(f.currentTarget.value)}}/>
\n {setDimensionX(f.currentTarget.value)}}/>
\n {setDimensionY(f.currentTarget.value)}}/>
\n {setHalfLineHeight(f.currentTarget.value)}}/>
\n {setGridSizeX(f.currentTarget.value)}}/>
\n {setGridSizeY(f.currentTarget.value)}}/>
\n {setGridPaddingX(f.currentTarget.value)}}/>
\n {setGridPaddingY(f.currentTarget.value)}}/>
\n\n
}\n \n}\n\nexport {SkillTreeEditor}","import React, { useEffect,useState } from 'react';\nimport { DisplayIcon } from './DEFAULTS';\nimport ReactPlaceholder from 'react-placeholder';\nimport \"react-placeholder/lib/reactPlaceholder.css\";\n\nimport { HashLink as Link } from 'react-router-hash-link';\n\n\nconst axios = require('axios');\nconst cookies = require('cookie-handler');\n\nfunction TestHeader(p) {\n\n const {BACKENDURL,LOGGEDINUSER,LOGGEDINHASH} = p;\n\n const [avatar,setAvatar] = useState(undefined);\n const [username,setUsername] = useState(undefined);\n const [loading,setLoading] = useState(true)\n\n useEffect(()=>{\n axios.post(BACKENDURL+\"/validUser\",{\n username:LOGGEDINUSER,\n password:LOGGEDINHASH,\n recoveryhash:cookies.get(\"userID\")\n })\n .then((data)=>{\n if (data.data.verified) {\n setAvatar(data.data.avatar)\n setUsername(LOGGEDINUSER)\n }\n })\n .catch((err)=>{})\n .finally(()=>{\n setLoading(false)\n })}\n ,[BACKENDURL,LOGGEDINUSER,LOGGEDINHASH])\n\n return (\n
\n
\n \n
\n
\n
\n \n
\n
\n )\n}\n\nexport default TestHeader;","import { UncontrolledTooltip } from \"reactstrap\"\n\nfunction ExpandTooltip(p) {\n\n\treturn \n {p.children}\n \n}\n\nexport {ExpandTooltip}","import {PencilFill,Save,HandThumbsUp,HandThumbsUpFill} from 'react-bootstrap-icons'\nimport React, { useEffect,useState } from 'react';\nimport Modal from 'react-modal'\nimport { DisplayIcon } from './DEFAULTS';\nimport { ExpandTooltip } from './components/ExpandTooltip';\nimport { SkillTree } from './skilltree/skillTree';\nimport axios from 'axios';\nimport Helmet from 'react-helmet'\nimport ReactPlaceholder from 'react-placeholder';\nimport \"react-placeholder/lib/reactPlaceholder.css\";\nimport Class from './components/Class';\n\nimport { useLocation,useHistory,useParams,matchPath } from 'react-router'\n\n//Helper variables for Weapon selector with structure: [weapon_type,weapon,potential,potential_tooltip,weapon_existence_data]\nconst WEAPON_WEAPONTYPE=0;const WEAPON_WEAPON=1;const WEAPON_POTENTIAL=2;const WEAPON_POTENTIAL_TOOLTIP=3;const WEAPON_EXISTENCE_DATA=4;\n\nfunction EditBox(p) {\n\tuseEffect(()=>{\n\t\tvar timer1 = setTimeout(()=>{\n document.getElementById(\"editBoxInput\").focus()\n document.getElementById(\"editBoxInput\").select()\n },100)\n\t\treturn () => {\n\t\t\tclearTimeout(timer1);\n\t\t};\n\t},[p.edit])\n\treturn {\n\t\tif (e.key===\"Enter\") {p.setEdit(false)}\n\t\telse if (e.key===\"Escape\") {p.setEdit(false)}\n\t}}\tmaxLength={p.maxlength?p.maxlength:20} onBlur={()=>{p.setEdit(false)}} value={p.value} onChange={(f)=>{f.currentTarget.value.length>0?p.setName(f.currentTarget.value):p.setName(p.originalName)}}>\n\t\n}\n\nfunction EditBoxInput(p) {\n\tconst [edit,setEdit] = useState(false)\n\t\n\tuseEffect(()=>{\n\t\tif (p.callback) {\n\t\t\tp.callback()\n\t\t}\n\t},[edit,p])\n\t\n\treturn <>\n\t\t
{setEdit(true)}}>\n\t\t\t{edit?\n\t\t\t\n\t\t\t:<>{p.prefix}{p.data}}\n\t\t
\n\t\n}\n\nfunction PageControlButton(p) {\n\treturn
  • {if (p.onPageChange) {p.onPageChange(p.pageName)} p.setCurrentPage(p.page)}} className={(p.currentPage===p.page)?\"selected\":\"unselected\"}>{p.pageDisplay?p.pageDisplay[p.page-1]:p.pageName?p.pageName:p.page}
  • \n}\n\nfunction PageControl(p) {\n\tvar pages = []\n\tfor (var i=0;i)\n\t}\n if (p.children!==undefined) {\n pages.push(
  • {p.children}
  • )\n }\n //console.log(JSON.stringify(p.children))\n\treturn pages.length>0&&
      \n\t\t\t{pages.map((page,i)=>{return {page}})}\n\t\t
    \n}\n\nfunction EditableClass(p){\n\treturn <>
    {p.setClassNameSetter(p.editClass);p.setClassSelectWindowOpen(true)}}>\n\t
    \n\t\n}\n\nfunction PopupWindow(p) {\n\n\treturn {p.setModalOpen(false)}} shouldFocusAfterRender={true} shouldCloseOnOverlayClick={true} shouldCloseOnEsc={true} className=\"modal\" overlayClassName=\"modalOverlay\">\n
    \n
    \n

    {p.title}

    \n {p.showCloseButton&&
    {p.setModalOpen(false)}}>
    }\n
    \n \n \n {p.children}\n
    \n\t
    \n}\n\nfunction SelectorWindow(p) {\n\n const { onModalOpen } = p\n\n const [itemList,setItemList] = useState([])\n\n const [tabPage,setTabPage] = useState(1)\n const [sortSelector,setSortSelector] = useState(p.sortItems?p.sortItems[0]:\"\")\n const [filter,setFilter] = useState(\"\")\n \n useEffect(()=>{\n if (p.dataFunction) {\n setItemList(p.dataFunction())\n }\n },[p])\n\n useEffect(()=>{\n if (onModalOpen) {\n onModalOpen(setTabPage)\n }\n },[onModalOpen])\n \n return \n {(p.sortItems||p.filter)&&
    \n
    \n {p.sortItems&&}\n
    \n
    \n {p.filter?{setFilter(f.currentTarget.value)}} />:<>}\n
    \n
    \n }\n
    \n {p.filter?itemList.filter((item)=>p.filterFunction(tabPage,item)).filter((item)=>p.searchFieldFunction(filter,item)).sort((a,b)=>p.sortOrderFunction(sortSelector,a,b)).map((item,i)=>{p.displayFunction(item)}):itemList.map((item,i)=>{p.displayFunction(item)})}\n {p.children}\n
    \n {p.footer}\n
    \n}\n\nfunction LeftButton(p){\n\treturn \n \n}\n\nfunction RightButton(p){\n\treturn \n \n}\nfunction ClassSelectorWindow(p) {\n const [title,setTitle] = useState(\"Select Main Class\")\n useEffect(()=>{\n setTitle((p.editClass)?\"Select Sub Class\":\"Select Main Class\")\n },[p.editClass])\n return {\n if (page===\"Main Class\") {\n p.setEditClass(0)\n } else {\n p.setEditClass(1)\n }\n }}\n onModalOpen={(pageSetter)=>{\n pageSetter((p.editClass)?2:1)\n }}\n dataFunction={() => {\n var dat1 = p.GetData(\"class\")\n return Object.keys(dat1)\n }\n }\n displayFunction={(key) => {\n return
    {if (p.editClass===0){p.setClassName(key);p.setSubClassName(p.subClass===key?p.class:p.subClass)}else{p.setSubClassName(key);p.setClassName(p.class===key?p.subClass:p.class)}; p.setModalOpen(false) }}>\"\" {p.GetData(\"class\", key, \"name\")}
    \n }}\n/>\n}\n\nfunction GetSpecialWeaponName(item) {\n return item[WEAPON_EXISTENCE_DATA]!==undefined?(item[WEAPON_EXISTENCE_DATA].special_name?.length>0)?item[WEAPON_EXISTENCE_DATA].special_name:(item[WEAPON_WEAPON].name+\" \"+item[WEAPON_WEAPONTYPE].name):<>Select Weapon\n}\n\nfunction ConvertCoordinate(x,y) {\n return (String.fromCharCode(Number(x)+'a'.charCodeAt(0)))+(y/2+1);\n}\n\nfunction SkillBox(p) {\n return
    \"\"{(p.skillPointData[p.page-1][p.boxId]?p.skillPointData[p.page-1][p.boxId]:0)+\"/\"+p.maxPoints}{typeof p.GetData(\"class_skill\",p.skill[2],\"name\",true)===\"string\"&&p.GetData(\"class_skill\",p.skill[2],\"name\",true)}
    \n {\n var temp=[...p.points]\n var tempData=[...p.skillPointData]\n if (!tempData[p.page-1][p.boxId]) {\n tempData[p.page-1][p.boxId]=0\n }\n if (tempData[p.page-1][p.boxId]>0) {\n temp[p.page-1]-=1\n tempData[p.page-1][p.boxId]-=1\n p.setPoints(temp)\n p.setSkillPointData(tempData)\n }}}/>\n {\n var temp=[...p.points]\n var tempData=[...p.skillPointData]\n if (!tempData[p.page-1][p.boxId]) {\n tempData[p.page-1][p.boxId]=0\n }\n if (tempData[p.page-1][p.boxId]
    \n}\n\nfunction SkillTreeBoxes(p) {\n\n function GetHighestLevel(skill) {\n var skillInfo = Object.keys(p.GetData(\"class_skill_data\"))\n var highestLevel = 0\n for (var i=0;ihighestLevel) {\n highestLevel=skillData.level\n }\n }\n return highestLevel\n }\n\n function isLocked(skill) {\n return false\n }\n\n return <>\n {p.skillTreeSkillData&&p.skillTreeSkillData.map((skill,i)=>{\n var splitter = skill.split(\",\")\n return splitter[0]!==\"\"&&splitter[1]!==\"\"&&splitter[2]!==\"\"&&0?\"skillActive\":\"\"} boxId={splitter[0]+\"_\"+splitter[1]} skillPointData={p.skillPointData} setSkillPointData={p.setSkillPointData} page={p.page} cl={p.cl} maxPoints={GetHighestLevel(splitter[2])} points={p.points} setPoints={p.setPoints} GetData={p.GetData} skill={splitter.map((numb)=>Number(numb))}/>\n })}\n \n}\n\nfunction SkillTreeContainer(p){\n\n const { GetData } = p\n\n const [skillTreeData,setSkillTreeData] = useState([])\n const [skillTreeSkillData,setSkillTreeSkillData] = useState([])\n const [skillTreeLineColor,setSkillTreeLineColor] = useState(\"\")\n const [skillTreeLineWidth,setSkillTreeLineWidth] = useState(3)\n const [skillTreeDimensionX,setSkillTreeDimensionX] = useState(6)\n const [skillTreeDimensionY,setSkillTreeDimensionY] = useState(6)\n const [skillTreeGridSizeX,setSkillTreeGridSizeX] = useState(171)\n const [skillTreeGridSizeY,setSkillTreeGridSizeY] = useState(148)\n const [skillTreeGridPaddingX,setSkillTreeGridPaddingX] = useState(10)\n const [skillTreeGridPaddingY,setSkillTreeGridPaddingY] = useState(48)\n const [halflineheight,setHalfLineHeight] = useState(60)\n\n useEffect(()=>{\n if (Object.keys(GetData(\"skill_tree_data\")).length>1) {\n for (var skillTree of GetData(\"skill_tree_data\")) {\n if (skillTree.class_id===GetData(\"class\",p.cl,'id')) {\n var data = skillTree.data.split(\",\")\n var skillData = skillTree.skill_data.split(\";\")\n setSkillTreeData(data)\n setSkillTreeSkillData(skillData)\n setSkillTreeLineColor(skillTree.line_color)\n setSkillTreeLineWidth(skillTree.line_width)\n setSkillTreeDimensionX(data[0].length)\n setSkillTreeDimensionY(data.length)\n setSkillTreeGridSizeX(skillTree.gridsizex)\n setSkillTreeGridSizeY(skillTree.gridsizey)\n setSkillTreeGridPaddingX(skillTree.gridpaddingx)\n setSkillTreeGridPaddingY(skillTree.gridpaddingy)\n setHalfLineHeight(skillTree.halflineheight)\n break;\n }\n }\n }\n },[p.cl,GetData])\n\n return
    \n
    \n {}\n
    \n \n
    \n
    \n
    \n}\n\nfunction FoodItem(p) {\n const {/*description,*/dmg_res,/*editors_choice,*/\n hp,hp_recovery,icon,/*id,*/name,/*popularity,*/potency,\n pp,pp_consumption,pp_recovery,weak_point_dmg,rarity,\n food_type} = p.item\n const {modifyPoints} = p\n const [points,setPoints] = useState(p.points)\n const boosts = [\n {\n name:\"Damage Resistance\",\n icon:\"\",\n val:dmg_res\n },\n {\n name:\"Health\",\n icon:\"\",\n val:hp\n },\n {\n name:\"Health Recovery\",\n icon:\"\",\n val:hp_recovery\n },\n {\n name:\"Potency\",\n icon:\"\",\n val:potency\n },\n {\n name:\"Damage Resistance\",\n icon:\"\",\n val:dmg_res\n },\n {\n name:\"PP Boost\",\n icon:\"\",\n val:pp\n },\n {\n name:\"PP Consumption Reduction\",\n icon:\"\",\n val:pp_consumption\n },\n {\n name:\"PP Recovery\",\n icon:\"\",\n val:pp_recovery\n },\n {\n name:\"Weak Point Damage\",\n icon:\"\",\n val:weak_point_dmg\n }]\n \n useEffect(()=>{\n setPoints(p.points)\n },[p.points])\n\n return
    {e.stopPropagation();modifyPoints(name,1)}} className={`itemWrapper${points>0?\"Active\":\"\"} r${rarity}`}>\n
    \n \"\"\n
    \n
    \n {name}\n
    \n
     
    \n
    \n {boosts.filter((val)=>val.val).map((val=>))}\n
    \n
    \n {e.stopPropagation();modifyPoints(name,-1)}}>-\n {points}\n {e.stopPropagation();modifyPoints(name,1)}}>+\n
    \n}\n\nfunction FoodPopupWindow(p) {\n\n const {GetData,foodPointData,setFoodPointData} = p\n\n const MAX_SELECTED=10;\n const FOODCOUNT = Object.keys(foodPointData).reduce((total,food)=>foodPointData[food]+total,0)\n\n function modifyPoints(foodName,add) {\n var temp = {...foodPointData}\n var total = FOODCOUNT\n if (add+total<=10&&add+total>=0) {\n temp[foodName] = Math.min(Math.max((temp[foodName]??0)+add,0),MAX_SELECTED)\n setFoodPointData(temp)\n }\n }\n\n return \n
    \n
    Foods in Recipe
    \n
    {FOODCOUNT}
    \n
    \n
    \n
    {p.setFoodMenuWindowOpen(false)}}>Confirm
    \n
    {p.setFoodMenuWindowOpen(false);p.setFoodPointData(p.prevFoodPointData)}}>Cancel
    \n
    \n }\n sortItems={[\"Standard Sort\",\"Alphabetical\",\"Food Name\",\"Food Type\",\"Popularity\"]}\n filter={true}\n dataFunction={()=>{\n return Object.keys(GetData(\"food\")).map((key)=>GetData(\"food\")[key])\n }}\n filterFunction={(page,item)=>item}\n searchFieldFunction={(searchText,item)=>searchText.length>0?item.name.trim().toLowerCase().includes(searchText.toLowerCase()):true}\n sortOrderFunction={(sort,itemA,itemB)=>{\n switch (sort) {\n case \"Standard Sort\":return itemB.id-itemA.id\n case \"Alphabetical\":return itemA.name.localeCompare(itemB.name)\n case \"Food Name\":return itemA.name.substr(itemA.name.lastIndexOf(\" \")).localeCompare(itemB.name.substr(itemB.name.lastIndexOf(\" \")))\n case \"Food Type\":return itemA.food_type.localeCompare(itemB.food_type)!==0?itemA.food_type.localeCompare(itemB.food_type):itemA.name.substr(itemA.name.lastIndexOf(\" \")).localeCompare(itemB.name.substr(itemB.name.lastIndexOf(\" \")))\n case \"Popularity\":return itemB.popularity-itemA.popularity\n default:return 0\n } \n }}\n displayFunction={(item)=>{\n return \n }}\n >\n
    \n}\n\nfunction TestPanel(p) {\n\n\nlet { BUILDID } = useParams()\nlet history = useHistory();\nlet location = useLocation();\n\nconst { GetData,LOGGEDINUSER,LOGGEDINHASH,BACKENDURL,APP_TITLE } = p\n\nconst [bpGraphMax,setbpGraphMax] = useState(1000)\nconst [hpGraphMax,sethpGraphMax] = useState(1000)\nconst [ppGraphMax,setppGraphMax] = useState(1000)\nconst [atkGraphMax,setatkGraphMax] = useState(1000)\nconst [defGraphMax,setdefGraphMax] = useState(1000)\n\nconst [author,setAuthor] = useState(\"Player\")\nconst [buildName,setbuildName] = useState(\"Character\")\nconst [className,setClassName] = useState(\"Ranger\")\nconst [subclassName,setSubClassName] = useState(\"Force\")\nconst [level,setLevel] = useState(20)\nconst [secondaryLevel,setsecondaryLevel] = useState(20)\n\nconst [effectPage,setEffectPage] = useState(1)\nconst [weaponPage,setWeaponPage] = useState(1)\nconst [statPage,setStatPage] = useState(1)\n\nconst [foodMenuWindowOpen,setFoodMenuWindowOpen] = useState(false)\nconst [classSelectWindowOpen,setClassSelectWindowOpen] = useState(false)\nconst [classSkillTreeWindowOpen,setClassSkillTreeWindowOpen] = useState(false)\nconst [treePage,setTreePage] = useState(1)\nconst [weaponSelectWindowOpen,setWeaponSelectWindowOpen] = useState(false)\nconst [armorSelectWindowOpen,setArmorSelectWindowOpen] = useState(false)\nconst [augmentSelectWindowOpen,setAugmentSelectWindowOpen] = useState(false)\nconst [augmentDetailsWindowOpen,setAugmentDetailsWindowOpen] = useState(false)\n\n\nconst [selectedWeapon,setSelectedWeapon] = useState([])\nconst [selectedArmor1,setSelectedArmor1] = useState([])\nconst [selectedArmor2,setSelectedArmor2] = useState([])\nconst [selectedArmor3,setSelectedArmor3] = useState([])\nconst [armorSlotSelection,setArmorSlotSelection] = useState(1)\n\nconst [classNameSetter,setClassNameSetter] = useState(0)\n\nconst [points,setPoints] = useState([])\nconst [skillPointData,setSkillPointData] = useState([])\nconst [prevSkillPointData,setPrevSkillPointData] = useState([])\nconst [prevPoints,setPrevPoints] = useState([])\n\nconst [foodPointData,setFoodPointData] = useState({})\nconst [prevFoodPointData,setPrevFoodPointData] = useState({})\n\nconst [BUFFS,setBUFFS] = useState({})\n\nconst [buildLoad,setBuildLoad] = useState(false)\nconst [liked,setLiked] = useState(false)\n\nfunction SaveData() {\n var saveObj = {\n level:level,\n secondaryLevel:secondaryLevel,\n weaponBaseName:selectedWeapon[WEAPON_WEAPON]?.name,\n weaponType:selectedWeapon[WEAPON_WEAPONTYPE]?.name,\n weaponExistenceID:selectedWeapon[WEAPON_EXISTENCE_DATA]?.id,\n armor1Name:selectedArmor1?.name,\n armor2Name:selectedArmor2?.name,\n armor3Name:selectedArmor3?.name,\n points:points,\n skillPointData:skillPointData,\n foodPointData:foodPointData,\n }\n axios.post(BACKENDURL+\"/submitBuild\",{\n id:BUILDID,\n username:LOGGEDINUSER,\n pass:LOGGEDINHASH,\n creator:author,\n build_name:buildName,\n class1:className,\n class2:subclassName,\n data:JSON.stringify(saveObj),})\n .then((data)=>{\n const match=matchPath(location.pathname,{\n path:p.path,\n exact:true,\n strict:false\n })\n history.push(match.path.replace(\"/:BUILDID\",\"\")+\"/\"+data.data.id)\n })\n}\n\nfunction rarityCheck(v) {\n return v!==undefined?v.rarity!==undefined?\" r\"+v.rarity:\"\":\"\"\n}\n\nuseEffect(()=>{\n if (p.bp>1000) {\n setbpGraphMax(3000)\n sethpGraphMax(3000)\n setppGraphMax(3000)\n setatkGraphMax(3000)\n setdefGraphMax(3000)\n } else {\n setbpGraphMax(1000)\n sethpGraphMax(1000)\n setppGraphMax(1000)\n setatkGraphMax(1000)\n setdefGraphMax(1000)\n }\n},[p.bp]) \n\nuseEffect(()=>{\n var keys = Object.keys(GetData(\"class\"))\n var pointsArr = []\n var pointsDataArr = []\n for (var i=0;i{\n if (BUILDID) {\n setBuildLoad(false)\n axios.get(BACKENDURL+\"/getBuild?id=\"+BUILDID)\n .then((data)=>{\n setAuthor(data.data.creator)\n setbuildName(data.data.build_name)\n setClassName(GetData(\"class\",data.data.class1,\"name\",true))\n setSubClassName(GetData(\"class\",data.data.class2,\"name\",true))\n var dat = JSON.parse(data.data.data)\n setLevel(dat.level)\n setsecondaryLevel(dat.secondaryLevel)\n setPoints(dat.points)\n setSkillPointData(dat.skillPointData)\n setFoodPointData(dat.foodPointData??{})\n var dat1=p.GetData(\"weapon_existence_data\")\n var weapon_type=GetData(\"weapon_type\",dat.weaponType)\n var weapon=GetData(\"weapon\",dat.weaponBaseName)\n var potential=GetData(\"potential\",weapon.potential_id,undefined,true)\n var potential_all=GetData(\"potential_data\")\n var potential_tooltip=[]\n for (var pot in potential_all) {\n if (pot.includes(potential.name)) {\n potential_tooltip.push(p.GetData(\"potential_data\",pot))\n }\n }\n var existence_data = Array.isArray(dat1)?dat1.filter((weapon_existence_data)=>weapon_existence_data.weapon_type_id===weapon_type.id&&weapon_existence_data.weapon_id===weapon.id)[0]:undefined\n //console.log(JSON.stringify([weapon_type,weapon,potential,potential_tooltip,existence_data]))\n setSelectedWeapon([weapon_type,weapon,potential,potential_tooltip,existence_data])\n setSelectedArmor1(GetData(\"armor\",dat.armor1Name))\n setSelectedArmor2(GetData(\"armor\",dat.armor2Name))\n setSelectedArmor3(GetData(\"armor\",dat.armor3Name))\n })\n .catch((err)=>{\n console.log(err.message)\n })\n .finally(()=>{\n setBuildLoad(true)\n })\n } else {\n setBuildLoad(true)\n }\n},[BUILDID,GetData,BACKENDURL,p])\n\nuseEffect(()=>{\n\n function CalculateBuffs(foodPointData) {\n const boost_prefixes = {\n pp_consumption:\"Rich\",\n pp_recovery:\"Light\",\n weak_point_dmg:\"Crisp\",\n hp_recovery:\"Robust\",\n }\n const boost_suffixes = {\n potency:\"Meat\",\n pp:\"Fruit\",\n dmg_res:\"Vegetable\",\n hp:\"Seafood\",\n }\n\n var categories= {}\n Object.keys(GetData(\"food_mult\",\"0\")).filter((key)=>key!==\"id\"&&key!==\"amount\").forEach((key)=>{categories[key]={count:0}})\n Object.keys(foodPointData).map((key)=>{return {...GetData(\"food\",key),amount:foodPointData[key]}}).forEach((item)=>{\n for (var key of Object.keys(item)) {\n if (key in categories && item[key]) {\n categories[key].count+=item.amount\n }\n }\n })\n var finalObj = {}\n Object.keys(categories).filter((key)=>categories[key].count>0).forEach((key)=>finalObj[key]={...categories[key],from:boost_prefixes[key]??boost_suffixes[key]})\n return finalObj\n }\n\n\n setBUFFS(CalculateBuffs(foodPointData)??[])\n},[foodPointData,GetData])\n\n//console.log(p.GetData(\"class\",p.className,\"icon\"))\n\nfunction deepCopySkills(skillData) {\n var newSkillObj = []\n for (var data of skillData) {\n newSkillObj.push({...data})\n }\n return newSkillObj\n}\n\n return (<>\n \n \n {`${buildName} by ${author} - ${APP_TITLE}`}\n \n \n \n \n
    \n
    \n\n
    \n
    \n

    Basic Information

    {liked?{setLiked(false)}}/>:{setLiked(true)}}/>}
    {setLiked(!liked)}}>Like!
    \n \n\n
    \n\n
    Author
    \n
    Build Name
    \n
    Class
    \n
    Sub-Class
    \n
    \n\n
    \n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n

    Basic Stats

    \n\n\n
    \n
    Battle Power
    \n
    HP
    \n
    PP
    \n
    Attack
    \n
    Defense
    \n
    Weapon Up
    \n
    Ailment Resist.
    \n
    Damage Resist.
    \n\n
    {p.bp}
    \n
    {p.hp}
    \n
    {p.pp}
    \n
    {p.statDisplayAtk}
    \n
    {p.def}
    \n
    \"\" +{(p.weaponUp1*100).toFixed(1)}%
    \"\" +{(p.weaponUp3*100).toFixed(1)}%
    \n
    \"\" {(p.burnResist*100).toFixed(1)}%
    \"\" {(p.shockResist*100).toFixed(1)}%
    \"\" {(p.panicResist*100).toFixed(1)}%
    \"\" {(p.stunResist*100).toFixed(1)}%
    \n
    {(p.damageResist*100).toFixed(1)}%
    \n\n
     
    \n
     
    \n
     
    \n
     
    \n
     
    \n
    \"\" +{(p.weaponUp2*100).toFixed(1)}%
    \n
    \"\" {(p.freezeResist*100).toFixed(1)}%
    \"\" {(p.blindResist*100).toFixed(1)}%
    \"\" {(p.poisonResist*100).toFixed(1)}%
    \n\n
    \n \n \n\n
    \n\n\n
    \n
    \n

    Equip

    \n
    \n
    {setWeaponSelectWindowOpen(true)}} className=\"equipPaletteSlot\">

    Weapons

    1\"\"
    \n
    {setArmorSlotSelection(1);setArmorSelectWindowOpen(true)}} className={\"equipPaletteSlot\"+rarityCheck(selectedArmor1)}>

    Armor 1

    \"\"
    \n
    {setArmorSlotSelection(2);setArmorSelectWindowOpen(true)}} className={\"equipPaletteSlot\"+rarityCheck(selectedArmor2)}>

    Armor 2

    \"\"
    \n
    {setArmorSlotSelection(3);setArmorSelectWindowOpen(true)}} className={\"equipPaletteSlot\"+rarityCheck(selectedArmor3)}>

    Armor 3

    \"\"
    \n
    \n
    \n\n\n\n\n
    \n
    \n\n
    \n
    \n

    Equipped Weapon

    \n\n
    \n

    {GetSpecialWeaponName(selectedWeapon)}

    \n
    \n

    Edit

    \n +40
    \n
    \n
    {setAugmentDetailsWindowOpen(true)}}> Edit Details
    \n {weaponPage === 1 ?\n\n<>\n
    \n
    {setWeaponSelectWindowOpen(true)}}>\n

    Edit

    \n\"\"
    \n
    \n
    \n\n
    Rarity
    \n
    -
    \n\n
    Attack
    \n
    282
    \n\n
    Element
    \n
    -
    \n\n
    Equip Conditons
    \n
    Lv.15 (Current Lv.20)
    \n\n
    \n
    \n
    \n
    {setAugmentDetailsWindowOpen(true)}}>

    Edit

    \n
    Soulspring Unit Lv.3
    \n
    Fixa Attack Lv.3
    \n
    \nAugment\n
    \n\n
    Precision III
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n\n\n\n:weaponPage === 2 ?\n
    \n
    Enhancement Lv.
    \n
    Damage Adj.
    \n
    Weapon Up
    \n
    Ailment Resist.
    \n
    Available Classes
    \n
    Multi-weapon
    \n\n
    40
    \n
    75.0% ~ 100%
    \n
    9.9%
    \n
    0.0%
    0.0%
    0.0%
    \n
    \"\" \"\"
    \n
    \"\" \"\"
    \n\n
    9.9%
    \n
    0.0%
    0.0%
    \n\n
    9.9%
    \n
    0.0%
    0.0%
    \n
    \n :weaponPage === 3 ?\n\n
    \n

    Ability Details

    \n

    Stat Adjustment

    \n
    \n
      \n
    • Dynamo Unit Lv.3
    • \n
    • Fixa Attack Lv.3
    • \n
    • test
    • \n
    • test
    • \n
    • test
    • \n
    • test
    • \n
    \n
    \n
    \n\n\n \n \n \n \n \n \n \n \n\n
    HP+99
    PP+9
    \n
    \n
    \n :\n <>hi2\n }\n
    \n\n
    \n\n\n\n\n \n\n\n\n\n\n\n\n\n
    \n\n
    \n\n\n
    \n
    \n

    Current Effects

    \n \n \n {effectPage===1?<>

    Effect Name

    • {setPrevFoodPointData({...foodPointData});setFoodMenuWindowOpen(true)}}>Food Boost Effect\n
        \n {Object.keys(BUFFS).length===0&&
      • Add Quick Food
      • }\n {Object.keys(BUFFS).map((key)=>
      • \"\" [{BUFFS[key].from}] {key} +{BUFFS[key].count}
      • )}\n
      \n
    • \n
    • Shifta / Deband\n
        \n
      • \"\" Potency +5.0%
      • \n
      • \"\" Damage Resistance +10.0%
      • \n
      \n
    • \n
    • Region Mag Boost\n
        \n
      • \"\" Potency +5.0%
      • \n
      \n
    :<>\n }\n
    \n
    \n
    \n
    \n

    Damage Stats

    \n \n \n \n \n {statPage===1?<>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n :<>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n }\n \n
    Critical Hit Rate5%
    Critical Multiplier120%
    Midrange126
    Critical152
    Effective127
    Critical Hit Rate-
    Critical Multiplier-
    Midrange-
    Critical-
    Effective-
    \n
    \n
    \n\n
    \n
    \n

    Damage Formula Breakdown

    \n ( Weapon Attack Power * Variance + Base Attack Power - Enemy Defense )
    \n * Attack Potency\n * Main Class Weapon Boost\n * Class Skill Multi\n * Buffs\n * Debuffs\n * Enemy Part Multi\n * Enemy Debuffs\n * 0.2
    \n
    \n\n\n\n
    \n
    \n\n\n { setClassSkillTreeWindowOpen(false) }} shouldFocusAfterRender={true} shouldCloseOnOverlayClick={true} shouldCloseOnEsc={true} className=\"modal\" overlayClassName=\"modalOverlay\">\n
    \n
    \n

    Class Skill Tree

    \n
    { setClassSkillTreeWindowOpen(false) }}>
    \n
    \n cl)} pageDisplay={Object.keys(p.GetData(\"class\")).map((cl)=><>\"\" {cl})} currentPage={treePage} setCurrentPage={setTreePage} />\n \n
    \n
    Your Skill Points{20-points[treePage-1]}
    \n
    SP{points[treePage-1]}
    \n
    \n
    {setClassSkillTreeWindowOpen(false)}} className=\"skillConfirm\">
    Confirm
    {setPoints(prevPoints);setSkillPointData(prevSkillPointData);setClassSkillTreeWindowOpen(false)}}>Cancel
    \n
    \n
    \n\n{\n var dat1=p.GetData(\"weapon_existence_data\")\n return Array.isArray(dat1)?dat1.map((weapon_existence_data)=>{\n var weapon_type=p.GetData(\"weapon_type\",weapon_existence_data.weapon_type_id,undefined,true)\n var weapon=p.GetData(\"weapon\",weapon_existence_data.weapon_id,undefined,true)\n var potential=p.GetData(\"potential\",weapon.potential_id,undefined,true)\n var potential_all=p.GetData(\"potential_data\")\n var potential_tooltip=[]\n for (var pot in potential_all) {\n if (pot.includes(potential.name)) {\n potential_tooltip.push(p.GetData(\"potential_data\",pot))\n }\n }\n return [weapon_type,weapon,potential,potential_tooltip,weapon_existence_data]\n }):[]\n }}\n filterFunction={(page,item)=>{\n switch (page) {\n case 2:return item[WEAPON_WEAPONTYPE].name===\"Assault Rifle\"\n case 3:return item[WEAPON_WEAPONTYPE].name===\"Launcher\"\n case 4:return item[WEAPON_WEAPONTYPE].name===\"Rod\"\n case 5:return item[WEAPON_WEAPONTYPE].name===\"Talis\"\n default:return true\n }\n }}\n searchFieldFunction={(searchText,item)=>searchText.length>0?(item[WEAPON_WEAPON].name.toLowerCase()+\" \"+item[WEAPON_WEAPONTYPE].name.toLowerCase()).includes(searchText.trim().toLowerCase()):true}\n sortOrderFunction={(sort,itemA,itemB)=>{\n switch (sort) {\n case \"Rarity\":return itemB[1].rarity-itemA[1].rarity\n case \"Attack\":return itemB[1].atk-itemA[1].atk\n default:return 0\n } \n }}\n displayFunction={(item)=>{\n return
    {setSelectedWeapon(item);setWeaponSelectWindowOpen(false)}}>
    \"\"
    {GetSpecialWeaponName(item)}
     
    {item[WEAPON_WEAPON].atk}\n {item[WEAPON_POTENTIAL].name}\n \n <>{item[WEAPON_POTENTIAL_TOOLTIP].map((pot,i)=>{(i!==0)&&
    }{pot.name}: {pot.description?pot.description.split(\"\\\\n\").map((it,ii)=>{it}
    ):})}\n
    }}\n />\n \n{\n var dat1=p.GetData(\"armor\")\n return typeof dat1===\"object\"&&dat1!==null?Object.keys(dat1).map((armor)=>{\n return dat1[armor]\n }):[]\n }}\n filterFunction={(page,item)=>item.slot===armorSlotSelection}\n searchFieldFunction={(searchText,item)=>searchText.length>0?item.name.trim().toLowerCase().includes(searchText.toLowerCase()):true}\n sortOrderFunction={(sort,itemA,itemB)=>{\n switch (sort) {\n case \"Rarity\":return itemB.rarity-itemA.rarity\n case \"HP\":return itemB.hp-itemA.hp\n case \"PP\":return itemB.pp-itemA.pp\n case \"Melee Potency\":return itemB.mel_dmg-itemA.mel_dmg\n case \"Range Potency\":return itemB.rng_dmg-itemA.rng_dmg\n case \"Tech Potency\":return itemB.tec_dmg-itemA.tec_dmg\n default:return 0\n } \n }}\n displayFunction={(item)=>{\n return
    {\n switch(armorSlotSelection) {\n case 1:setSelectedArmor1(item);break;\n case 2:setSelectedArmor2(item);break;\n case 3:setSelectedArmor3(item);break;\n default:setSelectedArmor1(item)\n }\n setArmorSelectWindowOpen(false)}}>\n
    \"\"
    \n
    {item.name}
    \n
     
    \n
    {item.def}
    \n
    \n }}\n />\n\n\n\n{setAugmentDetailsWindowOpen(false)}} shouldFocusAfterRender={true} shouldCloseOnOverlayClick={true} shouldCloseOnEsc={true} className=\"modal\" overlayClassName=\"modalOverlayAugment\">\n
    \n
    \n
    \n

    Equipped Weapon

    \n
    \n

    {GetSpecialWeaponName(selectedWeapon)}

    \n
    \n

    Edit

    \n +40
    \n
    \n\n\n
    \n

    Ability Details

    \n

    Stat Adjustment

    \n
    \n
      \n
    • {setAugmentSelectWindowOpen(true)}} className=\"pot\">Dynamo Unit Lv.3
    • \n
    • {setAugmentSelectWindowOpen(true)}} className=\"fixa\">Fixa Attack Lv.3
    • \n
    • {setAugmentSelectWindowOpen(true)}} className=\"aug\">test
    • \n
    • {setAugmentSelectWindowOpen(true)}} className=\"aug\">test
    • \n
    • {setAugmentSelectWindowOpen(true)}} className=\"aug\">test
    • \n
    • {setAugmentSelectWindowOpen(true)}} className=\"aug\">test
    • \n
    \n
    \n
    \n\n\n \n \n \n \n \n \n \n \n\n
    HP+99
    PP+9
    \n
    \n
    \n\n\n\n
    \n
    \n \n
    \n \n{setAugmentSelectWindowOpen(false)}} shouldFocusAfterRender={true} shouldCloseOnOverlayClick={true} shouldCloseOnEsc={true} className=\"modal\" overlayClassName=\"modalOverlayAugment\">\n
    \n
    \n
    \n

    Select Augments

    \n
    \n
      \n
    • Dynamo Unit Lv.1
    • \n
    • Dynamo Unit Lv.2
    • \n
    • Dynamo Unit Lv.3
    • \n
    • Dynamo Unit Lv.4
    • \n
    • Fixa Attack Lv.1
    • \n
    • Fixa Attack Lv.2
    • \n
    • Fixa Attack Lv.3
    • \n
    • Fixa Attack Lv.4
    • \n
    • Melee I
    • \n
    • Melee II
    • \n
    • Melee III
    • \n
    • Precision I
    • \n
    • Precision II
    • \n
    • Precision III
    • \n
    \n
    \n
    \n
    \n
    \n\n)\n}\n\nexport default TestPanel;","import './reset.css'; // Generic reset\nimport './style.css'; // The new new\nimport React, {useState,useEffect,useReducer} from 'react';\nimport Toggle from 'react-toggle' //Tooltip props: http://aaronshaf.github.io/react-toggle/\nimport Helmet from 'react-helmet'\nimport Builds from './Builds';\n\nimport {TrashFill, PlusCircle, LifePreserver, Server, CloudUploadFill} from 'react-bootstrap-icons'\n\nimport { SkillTreeEditor } from './skilltree/skillTreeEditor'\n\nimport { GoogleLogin } from 'react-google-login';\n\nimport {\n HashRouter,\n Switch,\n Route,\n useHistory,\n} from \"react-router-dom\";\n\nimport { HashLink as Link } from 'react-router-hash-link';\n\nimport TestHeader from './TestHeader'; // Test Header!\nimport TestPanel from './TestPanel'; // Dudley's Test Panel\nimport md5 from 'md5';\n\n\nconst cookies = require('cookie-handler');\nconst axios = require('axios');\nconst parse = require('csv-parse/lib/sync')\n\n/*\nDamage types\nconst MELEE_DMG = 0\nconst RANGE_DMG = 1\nconst TECH_DMG = 2\n\nArt properties\nconst NORMAL = 0\nconst PHOTON_ART = 1\nconst WEAPON_ACTION = 2\nconst STEP_COUNTER = 3\nconst PARRY_COUNTER = 4\n//NOT USED YET*/\n\nconst BACKENDURL=process.env.REACT_APP_GITPOD_WORKSPACE_URL||process.env.REACT_APP_BACKENDURL||'https://projectdivar.com:4504'\nconst APP_TITLE = \"NGS Planner\"\n\nfunction GetBackendURL(p) {\n\treturn (BACKENDURL)+(p.TESTMODE?\"/test\":\"\")\n}\n\nfunction Box(p) {\n\treturn <>\n\t\t
    \n\t\t
    \n\t\t

    {p.title}

    \n\t\t
    \n\t\t\t{p.children} \n\t\t
    \n\t\n}\n\nfunction Table(p) {\n\treturn \n\n\t\t\t{p.children}\n\n\t\n}\n\nfunction InputBox(p) {\n\tconst [value,setValue] = useState(p.value)\n\tconst [failed,setFailed] = useState(false)\n\tconst [sending,setSending] = useState(false)\n\n\tfunction changeFunc(f){setValue(f.currentTarget.value)\n\t\tif (p.callback4) {\n\t\t\tp.callback4(f.currentTarget.value)\n\t\t}}\n\tfunction blurFunc(f){\n\t\tif (p.callback) {\n\t\t\tsetSending(true)\n\t\t\tsetFailed(false)\n\t\t\tp.callback(f.currentTarget.value)\n\t\t\t.then(()=>{setFailed(false)})\n\t\t\t.catch(()=>{setFailed(true)})\n\t\t\t.then(()=>{setSending(false)})}\n\t\telse \n\t\tif (p.callback3) {\n\t\t\tp.callback3(f.currentTarget.value)\n\t\t}}\n\tfunction keydownFunc(f){\n\t\tif (p.callback2) {\n\t\t\tp.callback2(f,value)\n\t\t}\n\t}\n\n\treturn p.data?:{keydownFunc(f)}} onChange={(f)=>{changeFunc(f)}} onBlur={(f)=>{blurFunc(f)}}/>\n}\n\nfunction TableEditor(p) {\n\t\n\tconst initialVals={}\n\n\tconst { TESTMODE } = p\n\t\n\tfunction updateVals(state,update) {\n\t\tif (update==='Clear') {\n\t\t\treturn initialVals\n\t\t}\n\t\tstate[update.field]=update.value\n\t\treturn state \n\t}\n\t\n\tconst [fields,setFields] = useState([])\n\tconst [data,setData] = useState([])\n\tconst [update,setUpdate] = useState(false)\n\tconst [submitVals,setSubmitVal] = useReducer(updateVals,initialVals)\n\tconst [loading,setLoading] = useState(false)\n\tconst [dependencies,setDependencies] = useState([])\n\tconst [importAllowed,setImportAllowed] = useState(false)\n\tconst [lockSubmission,setLockSubmission] = useState(false)\n\n\tfunction patchValue(value,p,col,dat) {\n\t\treturn axios.patch(p.BACKENDURL+p.path,{\n\t\t\t[col.name]:value===\"null\"?null:value,\n\t\t\tid:dat.id,\n\t\t\tpass:p.password\n\t\t})\n\t}\n\t\n\tfunction SubmitBoxes() {\n\t\tif (!lockSubmission) {\n\t\t\tsetLockSubmission(true)\n\t\t\taxios.post(p.BACKENDURL+p.path,{...submitVals,pass:p.password})\n\t\t\t.then(()=>{\n\t\t\t\tsetSubmitVal(\"Clear\")\n\t\t\t\tsetUpdate(true)\n\t\t\t})\n\t\t\t.catch((err)=>{\n\t\t\t\talert(JSON.stringify(err.response.data))\n\t\t\t})\n\t\t\t.then(()=>{\n\t\t\t\tsetLockSubmission(false)\n\t\t\t})\n\t\t}\n\t}\n\n\tfunction SubmitDeletion() {\n\t\tif (!lockSubmission) {\n\t\t\tsetLockSubmission(true)\n\t\t\tvar promises = []\n\t\t\tfor (var dat of data) {\n\t\t\t\tif (document.getElementById(\"delete_\"+dat.id).checked) {\n\t\t\t\t\tpromises.push(axios.delete(p.BACKENDURL+p.path,{data:{pass:p.password,id:dat.id}}))\n\t\t\t\t}\n\t\t\t}\n\t\t\tPromise.allSettled(promises)\n\t\t\t.catch((err)=>{\n\t\t\t\talert(err.message)\n\t\t\t})\n\t\t\t.then((data)=>{\n\t\t\t\tsetLockSubmission(false)\n\t\t\t\tsetUpdate(true)\n\t\t\t})\n\t\t}\n\t}\n\t\n\tuseEffect(()=>{\n\t\tsetUpdate(true)\n\t},[p.path,TESTMODE])\n\n\tuseEffect(()=>{\n\t\tfor (var col of fields) {\n\t\t\tif (col.name===\"name\") {\n\t\t\t\tsetImportAllowed(true)\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t},[fields])\n\t\n\tuseEffect(()=>{\n\t\tif (update) {\n\t\t\tsetLoading(true)\n\t\t\tvar dependency_map = {}\n\t\t\taxios.get(p.BACKENDURL+p.path+\"?pass=\"+p.password)\n\t\t\t.then((data)=>{\n\t\t\t\tvar cols = data.data.fields\n\t\t\t\tvar rows = data.data.rows\n\t\t\t\t\n\t\t\t\tsetFields(cols.filter((col,i)=>col.name!==\"id\"&&!(i===0&&col.name===\"name\")))\n\n\t\t\t\tvar promise_list = []\n\n\t\t\t\tcols.filter((col)=>col.name!==\"id\"&&col.name.includes(\"_id\")).forEach((col)=>{\n\t\t\t\t\tpromise_list.push(axios.get(p.BACKENDURL+\"/\"+col.name.replace(\"_id\",\"\")+\"?pass=\"+p.password)\n\t\t\t\t\t.then((data)=>{\n\t\t\t\t\t\tdependency_map[col.name]=data.data.rows.sort((a,b)=>b.id-a.id)\n\t\t\t\t\t}))\n\t\t\t\t})\n\t\t\t\tsetData(rows)\n\t\t\t\treturn Promise.allSettled(promise_list)\n\t\t\t})\n\t\t\t.then(()=>{\n\t\t\t\tsetDependencies(dependency_map)\n\t\t\t\tsetLoading(false)\n\t\t\t})\n\t\t\tsetUpdate(false)\n\t\t}\n\t},[update,p.path,p.BACKENDURL,p.password])\n\t\n\treturn <>\n\t{!loading?<>\t\t\t {importAllowed&&{\n\t\t\t\tconst reader = new FileReader()\n\t\t\t\treader.onload=(ev)=>{\n\t\t\t\t\tvar promises=[]\n\t\t\t\t\tparse(ev.target.result,{columns:true,skip_empty_lines:true}).forEach((entry)=>{\n\t\t\t\t\t\tfor (var col of fields) {\n\t\t\t\t\t\t\tif ((col.dataTypeID===23||col.dataTypeID===701||col.dataTypeID===16)&&entry[col.name]===\"\") {\n\t\t\t\t\t\t\t\tentry[col.name]=0\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tpromises.push(axios.post(p.BACKENDURL+p.path,{...entry,pass:p.password}))\n\t\t\t\t\t})\n\t\t\t\t\tPromise.allSettled(promises)\n\t\t\t\t\t.then(()=>{\n\t\t\t\t\t\tsetUpdate(true)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\treader.readAsText(f.target.files[0])\n\t\t\t }} style={{opacity:0}} id=\"uploads\" type=\"file\" accept=\".txt,.csv\"/>}\n\t\t
    \n\t\t\t\n\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{fields.map((field,i)=>)}\n\t\t\t\t\n\t\t\t \n\t\t\t \n\t\t\t\t\t\t{{fields.map((col,i)=>)}}\n\t\t\t\t\t{data.map((dat)=>\n\t\t\t\t\t{fields.map((col,i)=>)})}\n\t\t\t \n\t\t\t
    {SubmitDeletion()}} className=\"trashButton\"/>{field.name}
    {{setSubmitVal({field:col.name,value:f});}}/>}{SubmitBoxes()}} className=\"submitbutton\"/>
    \n\t\t\t\t\t\tpatchValue(value,p,col,dat)} callback2={(f,value)=>{if (f.key==='Enter') {f.currentTarget.blur()} else {return 'Chill'}}} value={String(dat[col.name])}/>
    \n\t\t
    :<>\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/\"\"/}\n\t\n}\n\nfunction DatabaseEditor(p) {\n\tconst [loading,setLoading] = useState(true)\n\tconst [message,setMessage] = useState()\n\tconst [databases,setDatabases] = useState([])\n\tconst [update,setUpdate] = useState(true)\n\n\tuseEffect(()=>{\n\t\tif (update) {\n\t\t\taxios.get(p.BACKENDURL+\"/databases?pass=\"+p.password)\n\t\t\t.then((data)=>{\n\t\t\t\tsetDatabases(data.data)\n\t\t\t})\n\t\t\t.catch((err)=>{\n\t\t\t\tconsole.log(err.message)\n\t\t\t})\n\t\t\t.then(()=>{\n\t\t\t\tsetLoading(false)\n\t\t\t})\n\t\t\tsetUpdate(false)\n\t\t}\n\t},[update,p.BACKENDURL,p.password])\n\n\treturn <>\n\t\t{!loading?<>\n\t\t\t\t

    \n\t\t\t\t

    \n\t\t\t\t

    \n\t\t\t:\"\"/\n\t\t}\n\t\t{message}\n\t\t
    \n\t\t

    \n\t\t

    Current Databases

    \n\t\t

    \n\t\tLive Database\n\t\t   Test Database
    \n\t\t{databases.map((db,i)=>{\n\t\t\tvar label = \"\"\n\t\t\tif (db.datname!==\"ngsplanner\"&&db.datname!==\"ngsplanner2\") {\n\t\t\t\tvar dateStr = db.datname.replace(\"ngsplanner\",\"\")\n\t\t\t\tvar date = new Date(dateStr.slice(0,4),dateStr.slice(4,6),dateStr.slice(6,8),dateStr.slice(8,10),dateStr.slice(10,12),dateStr.slice(12,14))\n\t\t\t\tlabel=<>{\"Backup from \"+date}\n\t\t\t\treturn {label}
    \n\t\t\t} else {\n\t\t\t\treturn \n\t\t\t}\n\t\t})}\n\t\n}\n\nfunction AdminPanel(p) {\n\tconst [verified,setVerified] = useState(false)\n\tconst [password,setPassword] = useState(\"\")\n\n\tconst navigationData=[\n\t\t{page:\"Class\",url:\"/admin/class\",table:\"/class\"},\n\t\t{page:\"Class Data\",url:\"/admin/classdata\",table:\"/class_level_data\"},\n\t\t{page:\"Class-Weapon Compatibility\",url:\"/admin/classweaponcompatibility\",table:\"/class_weapon_type_data\"},\n\t\t{page:\"Class Skills\",url:\"/admin/classskills\",table:\"/class_skill\"},\n\t\t{page:\"Class Skill Data\",url:\"/admin/classskilldata\",table:\"/class_skill_data\"},\n\t\t{hr:true},\n\t\t{page:\"Weapons\",url:\"/admin/weapons\",table:\"/weapon\"},\n\t\t{page:\"Weapon Existence Data\",url:\"/admin/weaponexistencedata\",table:\"/weapon_existence_data\"},\n\t\t{page:\"Weapon Types\",url:\"/admin/weapontypes\",table:\"/weapon_type\"},\n\t\t{page:\"Class-Weapon Compatibility\",url:\"/admin/classweaponcompatibility\",table:\"/class_weapon_type_data\",duplicate:true},\n\t\t{page:\"Photon Arts\",url:\"/admin/photonarts\",table:\"/photon_art\"},\n\t\t{hr:true},\n\t\t{page:\"Armor\",url:\"/admin/armor\",table:\"/armor\"},\n\t\t{page:\"Potentials\",url:\"/admin/potentials\",table:\"/potential\"},\n\t\t{page:\"Potential Data\",url:\"/admin/potentialdata\",table:\"/potential_data\"},\n\t\t{hr:true},\n\t\t{page:\"Builds\",url:\"/admin/builds\",table:\"/builds\"},\n\t\t{page:\"Likes\",url:\"/admin/likes\",table:\"/like_data\"},\n\t\t{hr:true},\n\t\t{page:\"Skills\",url:\"/admin/skills\",table:\"/skill\"},\n\t\t{page:\"Skill Types\",url:\"/admin/skilltypes\",table:\"/skill_type\"},\n\t\t{page:\"Skill Data\",url:\"/admin/skilldata\",table:\"/skill_data\"},\n\t\t{page:Skill Tree Editor,url:\"/admin/skilltreeeditor\",render:},\n\t\t{page:\"Skill Tree Data\",url:\"/admin/skilltreedata\",table:\"/skill_tree_data\"},\n\t\t{page:\"Photon Arts\",url:\"/admin/photonarts\",table:\"/photon_art\",duplicate:true},\n\t\t{page:\"Class Skills\",url:\"/admin/classskills\",table:\"/class_skill\",duplicate:true},\n\t\t{page:\"Class Skill Data\",url:\"/admin/classskilldata\",table:\"/class_skill_data\",duplicate:true},\n\t\t{hr:true},\n\t\t{page:\"Augment Types\",url:\"/admin/augmenttypes\",table:\"/augment_type\"},\n\t\t{page:\"Augments\",url:\"/admin/augments\",table:\"/augment\"},\n\t\t{page:\"Elements\",url:\"/admin/elements\",table:\"/element\"},\n\t\t{hr:true},\n\t\t{page:\"Enemy Data\",url:\"/admin/enemydata\",table:\"/enemy_data\"},\n\t\t{hr:true},\n\t\t{page:\"Food\",url:\"/admin/food\",table:\"/food\"},\n\t\t{page:\"Food Multipliers\",url:\"/admin/foodmultipliers\",table:\"/food_mult\"},\n\t\t{hr:true},\n\t\t{page:\"Roles\",url:\"/admin/roles\",table:\"/roles\"},\n\t\t{page:\"Users\",url:\"/admin/users\",table:\"/users\"},\n\t\t{hr:true},\n\t\t{page:\"Misc. Site Data\",url:\"/admin/sitedata\",table:\"/site_data\"},\n\t\t{page:\"Database Audit\",url:\"/admin/database_audit\",table:\"/database_audit\"},\n\t]\n\n\treturn
    \n\t\t{!verified?\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t

    Admin

    \n\t\t\t\t\t\t

    \n\t\t\t{setPassword(f.currentTarget.value)}} onKeyDown={(e)=>{\n\t\t\t\tif (e.key===\"Enter\") {\n\t\t\t\t\taxios.post(GetBackendURL(p)+\"/passwordcheck\",{\n\t\t\t\t\t\tpass:password\n\t\t\t\t\t})\n\t\t\t\t\t.then((data)=>{\n\t\t\t\t\t\tif (data.data.verified) {\n\t\t\t\t\t\t\tsetVerified(data.data.verified)\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\t.catch((err)=>{\n\t\t\t\t\t\tsetVerified(false)\n\t\t\t\t\t\tsetPassword(\"\")\n\t\t\t\t\t})}}}>\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n:<>\n\t\t\n\t\t
    \n\t\t
    \n\t\t

    Navigation

    \n\t\t
    \n\t\t

    Testing Mode {p.setTESTMODE(f.target.checked)}}/> {p.TESTMODE?ON:OFF}

    \n\t\t
    \n\t\t \n\t\t {navigationData.map((nav,i)=>(nav.hr)?
    :{nav.page}
    )}\n\t\t Database Manager
    \n\t\t
    \n\t\t
    \n\t\t
    \t\t\n\t\t\n\n\n\n\t\t\t{navigationData.map((nav,i)=>(nav.duplicate===undefined&&nav.hr===undefined)&&\n\t\t\t
    \n\t\t
    \n\t\t

    {nav.page}

    \n\t\t
    \n\t\t\n\t\t\t\t\t{APP_TITLE+\" - Admin Panel: \"+nav.page}\n\t\t\t\t\n\t\t\t\t{nav.render??}\n\t\t\t\t
    )}\n\n\t\t\t\n\t\t\t
    \n\t\t\t
    \n\t\t

    Database Editor

    \n\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \t\t\t\t\t\n\t\t\t\t
    \t\n\t\t\t
    \n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t}\n\t
    \n}\n\nfunction EditStatBox(p) {\n\n\tconst [value,setValue] = useState(p.value)\n\n\tuseEffect(()=>{\n\t\tsetValue(p.value)\n\t},[p.value])\n\n\treturn <>{setValue(f.currentTarget.value);p.callback(f.currentTarget.value)}}/> ({value})
    \n}\n\nfunction DamageCalculator(p) {\n\n\tconst [augmentData,setAugmentData] = useState({})\n\t//const [update,setUpdate] = useState(false)\n\n\tuseEffect(()=>{\n\t\taxios.get(p.BACKENDURL+\"/augment\")\n\t\t.then((data)=>{\n\t\t\tvar augmentData = {}\n\t\t\tdata.data.rows.forEach((entry)=>{augmentData[entry.name]=entry})\n\t\t\tsetAugmentData(augmentData)\n\t\t})\n\t},[p.BACKENDURL])\n\n\tconst character = {\n\t\tweapon:{\n\t\t\taugments:[\"1\",\"2\"]\n\t\t},\n\t\tarmor1:{\n\t\t\taugments:[\"2\"]\n\t\t},\n\t\tarmor2:{\n\t\t\taugments:[]\n\t\t},\n\t\tarmor3:{\n\t\t\taugments:[]\n\t\t}\n\t}\n\n\tuseEffect(()=>{\n\t\tif (Object.keys(augmentData).length>0) {\n\t\t\tvar searchFields = [{field:\"variance\",variable:0},{field:\"mel_dmg\",variable:0}]\n\t\t\tfor (var equip of [character.weapon,character.armor1,character.armor2,character.armor3]) {\n\t\t\t\tfor (var field of searchFields) {\n\t\t\t\t\tfor (var i=0;i{\n\t\tsetWeaponTotalAtk(Number(weaponBaseAtk)+Number(weaponEnhanceLv))\n\t},[weaponBaseAtk,weaponEnhanceLv])\n\n\tconst [dmgVariance,setDmgVariance] = useState(1)\n\n\t\tconst [weaponDmgVariance,setWeaponDmgVariance] = useState(1)\n\t\tconst [augDmgVariance,setAugDmgVariance] = useState(1)\n\n\tuseEffect(()=>{\n\t\tsetDmgVariance(Number(weaponDmgVariance)+Number(augDmgVariance))\n\t},[weaponDmgVariance,augDmgVariance])\n\n\tconst [baseAtk,setBaseAtk] = useState(100)\n\tconst [enemyDef,setEnemyDef] = useState(5)\n\tconst [multipliers,setMultipliers] = useState(1)\n\n\tuseEffect(()=>{\n\t\tsetRawDmg(((Number(weaponTotalAtk)*Number(dmgVariance))+Number(baseAtk)-Number(enemyDef))*Number(multipliers)/5)\n\t},[weaponTotalAtk,dmgVariance,baseAtk,enemyDef,multipliers])\n\t\n\tconst [atkmult,setAtkMult] = useState(1);\n\tconst [partmult,setPartMult] = useState(1);\n\tconst [elementalWeaknessMult,setElementalWeaknessMult] = useState(1.2)\n\tconst [mainClassWeaponBoost,setMainClassWeaponBoost] = useState(1.1)\n\tconst [classSkillMult,setClassSkillMult] = useState(1)\n\tconst [equipMult,setEquipMult] = useState(1)\n\n\tconst [augmentEquipMult,setAugmentEquipMult] = useState(1)\n\tconst [potencyFloorEquipMult,setPotencyFloorEquipMult] = useState(1)\n\tconst [elementalWeaponEquipMult,setElementalWeaponEquipMult] = useState(1.1)\n\t\n\tconst [critMult,setCritMult] = useState(1.2)\n\tconst [appropriateDistance,setAppropriateDistance] = useState(1)\n\t\n\tconst [foodBoost,setFoodBoost] = useState(1)\n\tconst [fieldEffects,setFieldEffects] = useState(1.05)\n\tconst [statusAilments,setStatusAilments] = useState(1)\n\n\tconst [enemyCorrectionMult,setEnemyCorrectionMult] = useState(1)\n\n\tconst [highLevelEnemy,setHighLevelEnemy] = useState(1)\n\n\tuseEffect(()=>{\n\t\tsetMultipliers(Number(atkmult)*Number(partmult)*Number(elementalWeaknessMult)*Number(mainClassWeaponBoost)*Number(classSkillMult)*Number(equipMult)*Number(augmentEquipMult)*Number(potencyFloorEquipMult)*Number(elementalWeaponEquipMult)*Number(critMult)*Number(appropriateDistance)*Number(foodBoost)*Number(fieldEffects)*Number(statusAilments)*Number(enemyCorrectionMult)*Number(highLevelEnemy))\n\t},[atkmult,partmult,elementalWeaknessMult,mainClassWeaponBoost,classSkillMult,equipMult,augmentEquipMult,potencyFloorEquipMult,elementalWeaponEquipMult,critMult,appropriateDistance,foodBoost,fieldEffects,statusAilments,enemyCorrectionMult,highLevelEnemy])\n\n\treturn <>\n\t\t
    \n\t\t\tWeapon Total Atk:{setWeaponTotalAtk(val)}}/>\n\t\t\t
      \n\t\t\t\t
    • ●Weapon Base Atk:{setWeaponBaseAtk(val)}}/>
    • \n\t\t\t\t
    • ●Weapon Enhance Lv:{setweaponEnhanceLv(val)}}/>
    • \n\t\t\t
    \n\t\t\t


    \n\t\t\tDamage Variance:{setDmgVariance(val)}}/>\n\t\t\t
      \n\t\t\t\t
    • ●Weapon Damage Variance:{setWeaponDmgVariance(val)}}/>
    • \n\t\t\t\t
    • ●Augment Damage Variance:{setAugDmgVariance(val)}}/>
    • \n\t\t\t
    \n\t\t\t


    \n\t\t\tBase Attack:{setBaseAtk(val)}}/>\n\t\t\tEnemy Defense:{setEnemyDef(val)}}/>\n\t\t\tMultipliers:{setMultipliers(val)}}/>\n\t\t\t
      \n\t\t\t\t
    • ●Atk Mult:{setAtkMult(val)}}/>
    • \n\t\t\t\t
    • ●Part Mult:{setPartMult(val)}}/>
    • \n\t\t\t\t
    • ●Elemental Weakness Mult:{setElementalWeaknessMult(val)}}/>
    • \n\t\t\t\t
    • ●Main Class Weapon Boost:{setMainClassWeaponBoost(val)}}/>
    • \n\t\t\t\t
    • ●Class Skill Mult:{setClassSkillMult(val)}}/>
    • \n\t\t\t\t
    • ●Equip Mult:{setEquipMult(val)}}/>
    • \n\t\t\t\t
    • \n\t\t\t\t\t
        \n\t\t\t\t\t\t
      • ●Augment Equip Mult:{setAugmentEquipMult(val)}}/>
      • \n\t\t\t\t\t\t
      • ●Potency Floor Equip Mult:{setPotencyFloorEquipMult(val)}}/>
      • \n\t\t\t\t\t\t
      • ●Elemental Weapon Equip Mult:{setElementalWeaponEquipMult(val)}}/>
      • \n\t\t\t\t\t
      \n\t\t\t\t
    • \n\t\t\t\t
    • ●Crit Mult:{setCritMult(val)}}/>
    • \n\t\t\t\t
    • ●Appropriate Distance:{setAppropriateDistance(val)}}/>
    • \n\t\t\t\t
    • ●Food Boost:{setFoodBoost(val)}}/>
    • \n\t\t\t\t
    • ●Field Effects:{setFieldEffects(val)}}/>
    • \n\t\t\t\t
    • ●Status Ailments:{setStatusAilments(val)}}/>
    • \n\t\t\t\t
    • ●Enemy Correction Multiplier:{setEnemyCorrectionMult(val)}}/>
    • \n\t\t\t\t
    • ●High Level Enemy:{setHighLevelEnemy(val)}}/>
    • \n\t\t\t
    \n\t\t\t


    \n\t\t\tRaw Dmg:{rawDmg}\n\t\t
    \n\t\n}\n\nfunction FormField(p) {\n\treturn <>{\n\t\tp.type===\"toggle\"?<> :} \n}\n\nfunction VerifyLogin(p) {\n\taxios.post(GetBackendURL(p)+\"/validUser\",{\n\t\tusername:p.LOGGEDINUSER,\n\t\tpassword:p.LOGGEDINHASH,\n\t\trecoveryhash:cookies.get(\"userID\")\n\t})\n\t.then((data)=>{\n\t\tif (data.data.verified) {\n\t\t\tp.history.push(\"/\")\n\t\t}\n\t})\n\t.catch((err)=>{\n\t\tconsole.log(err.message)\n\t})\n}\n\nfunction LoginForm(p) {\n\n\tfunction useHashQuery() {\n\t\tconst urlSearchParams = new URLSearchParams(window.location.search);\n\t\tconst params = Object.fromEntries(urlSearchParams.entries());\n\t\treturn params\n\t}\n\n\tconst query = useHashQuery()\n\n\tconst [username,setUsername] = useState(\"\")\n\tconst [password,setPassword] = useState(\"\")\n\tconst [rememberMe,setRememberMe] = useState(false)\n\tconst [error,setError] = useState(\"\")\n\tconst [loading,setLoading] = useState(false)\n\tconst [message,setMessage] = useState(\"\")\n\n\tconst history = useHistory()\n\n\tuseEffect(()=>{\n\t\tVerifyLogin({...p,history:history})\n\t},[history,p])\n\n\tfunction SubmitLogin() {\n\t\tsetError(\"\")\n\t\tsetLoading(true)\n\t\taxios.post(GetBackendURL(p)+\"/validUser\",{\n\t\t\tusername:username,\n\t\t\tpassword:md5(password)\n\t\t})\n\t\t.then((data)=>{\n\t\t\tif (data.data.verified) {\n\t\t\t\tp.setLOGGEDINUSER(username)\n\t\t\t\tp.setLOGGEDINHASH(md5(password))\n\t\t\t\tcookies.set(\"username\",username,30,'d')\n\t\t\t\tcookies.set(\"password\",md5(password),30,'d')\n\t\t\t\tsetUsername(\"\")\n\t\t\t\tsetPassword(\"\")\n\t\t\t\tsetRememberMe(false)\n\t\t\t\thistory.push(\"/\")\n\t\t\t} else {\n\t\t\t\tsetError(\"Could not authenticate!\")\n\t\t\t}\n\t\t})\n\t\t.catch((err)=>{\n\t\t\tsetError(err?.message??err);\n\t\t})\n\t\t.then(()=>{\n\t\t\tsetLoading(false)\n\t\t})\n\t}\n\n\tfunction responseGoogle(response) {\n\t\t//setMessage(JSON.stringify(response))\n\t\tif (response.error) {\n\t\t\tsetMessage(JSON.stringify(response))\n\t\t} else \n\t\tif (response.profileObj.googleId&&\n\t\t\tresponse.profileObj.imageUrl&&\n\t\t\tresponse.profileObj.email&&\n\t\t\tresponse.profileObj.name&&\n\t\t\tresponse.tokenId){\n\t\t\taxios.post(GetBackendURL(p)+\"/registerUser\",{\n\t\t\t\tusername:response.profileObj.name,\n\t\t\t\temail:response.profileObj.email,\n\t\t\t\tpassword:response.tokenId,\n\t\t\t\tavatar:response.profileObj.imageUrl,\n\t\t\t\tuserID:response.profileObj.googleId,\n\t\t\t\trecoveryhash:response.profileObj.googleId\n\t\t\t})\n\t\t\t.then((data)=>{\n\t\t\t\tif (data.data.verified) {\n\t\t\t\t\tp.setLOGGEDINUSER(response.profileObj.name)\n\t\t\t\t\tp.setLOGGEDINHASH(response.tokenId)\n\t\t\t\t\tcookies.set(\"username\",response.profileObj.name,30,'d')\n\t\t\t\t\tcookies.set(\"password\",response.tokenId,30,'d')\n\t\t\t\t\tcookies.set(\"userID\",response.profileObj.googleId,30,'d')\n\t\t\t\t\tsetUsername(\"\")\n\t\t\t\t\tsetPassword(\"\")\n\t\t\t\t\tsetRememberMe(false)\n\t\t\t\t\thistory.push(\"/\")\n\t\t\t\t} else {\n\t\t\t\t\tcookies.remove(\"userID\")\n\t\t\t\t\tsetError(\"Could not authenticate!\")\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t }\n\n\tfunction DiscordLoginButton(){\n\n\t\tconst [checkForLogin,setCheckForLogin] = useState(false)\n\n\t\tconst history = useHistory()\n\n\t\tuseEffect(()=>{\n\t\t\tif (query.code) {\n\t\t\t\tsetCheckForLogin(true)\n\t\t\t}\n \t\t},[])\n\t\t\n\t\tuseEffect(()=>{\n\t\t\tif (checkForLogin) {\n\t\t\t\tconsole.log(\"Attempting login...\")\n\n\t\t\t\taxios.get(GetBackendURL(p)+\"/userData?token=\"+query.code)\n\t\t\t\t.then((data)=>{\n\t\t\t\t\tp.setLOGGEDINUSER(data.data.username)\n\t\t\t\t\tp.setLOGGEDINHASH(data.data.token)\n\t\t\t\t\tconsole.log(data.data.token)\n\t\t\t\t\tcookies.set(\"username\",data.data.username,30,'d')\n\t\t\t\t\tcookies.set(\"password\",data.data.token,30,'d')\n\t\t\t\t\tcookies.set(\"userID\",data.data.id,30,'d')\n\t\t\t\t\tconsole.log(cookies.get(\"username\"))\n\t\t\t\t\tconsole.log(cookies.get(\"password\"))\n\t\t\t\t\tconsole.log(cookies.get(\"userID\"))\n\t\t\t\t\treturn axios.post(GetBackendURL(p)+\"/registerUser\",{\n\t\t\t\t\t\tusername:data.data.username,\n\t\t\t\t\t\temail:data.data.email,\n\t\t\t\t\t\tpassword:data.data.token,\n\t\t\t\t\t\tavatar:\"https://cdn.discordapp.com/avatars/\"+data.data.id+\"/\"+data.data.avatar+\".png\",\n\t\t\t\t\t\tuserID:data.data.id,\n\t\t\t\t\t\trecoveryhash:data.data.id\n\t\t\t\t\t})\n\t\t\t\t\t//window.location.href=\"\"\n\t\t\t\t\t//console.log(data.data)\n\t\t\t\t})\n\t\t\t\t.then((data)=>{\n\t\t\t\t\t//window.location.href=\"\"\n\t\t\t\t\thistory.push(\"/\")\n\t\t\t\t})\n\t\t\t\t.catch((err)=>{\n\t\t\t\t\tconsole.log(err.message)\n\t\t\t\t})\n\t\t\t}\n\t\t},[checkForLogin,history])\n\t\t\t\n\t\treturn <>\n\t\t\t\n\t\t\n\t}\n\n\treturn <>\n\t\n\t{loading?\n\t\t\"\"\n\t\t:<>
    {if (f.key===\"Enter\") {SubmitLogin()}}}>

    {error}

    \n\t\t{setUsername(p.currentTarget.value)}} placeholder=\"Username\"/>
    \n\t\t{setPassword(p.currentTarget.value)}} placeholder=\"Password\"/>
    \n\t\t{setRememberMe(p.currentTarget.checked)}}/>
    \n\t\t
    \n\t\t
    \n\t\t{message}
    \n\t\t\n\t\t\n\t\t\n\t}\n\t
    \n}\n\nfunction RegisterForm(p) {\n\tconst [username,setUsername] = useState(\"\")\n\tconst [password,setPassword] = useState(\"\")\n\tconst [password2,setPassword2] = useState(\"\")\n\tconst [email,setEmail] = useState(\"\")\n\tconst [rememberMe,setRememberMe] = useState(false)\n\tconst [error,setError] = useState(\"\")\n\tconst [loading,setLoading] = useState(false)\n\n\tconst history = useHistory()\n\n\tuseEffect(()=>{\n\t\tVerifyLogin({...p,history:history})\n\t},[history,p])\n\n\tfunction SubmitRegister() {\n\t\tsetError(\"\")\n\t\tsetLoading(true)\n\t\ttry{\n\t\t\tif (username.length<4) {throw new Error(\"Username must be at least 4 characters in length.\")}\n\t\t\tif (username.length>20) {throw new Error(\"Username must be less than 21 characters in length.\")}\n\t\t\tif (password.length<6) {throw new Error(\"Password must contain at least 6 characters.\")}\n\t\t\tif (password!==password2) {throw new Error(\"Password fields must match.\")}\n\t\t\tif (!email.includes(\"@\")) {throw new Error(\"Invalid E-mail.\")}\n\t\t}catch(err){\n\t\t\tsetError(err?.message??err);\n\t\t\tsetLoading(false)\n\t\t\treturn\n\t\t}\n\t\taxios.post(GetBackendURL(p)+\"/register\",{\n\t\t\tusername:username,\n\t\t\tpassword:md5(password),\n\t\t\temail:email\n\t\t})\n\t\t.then((data)=>{\n\t\t\tif (data.data.verified) {\n\t\t\t\tp.setLOGGEDINUSER(username)\n\t\t\t\tp.setLOGGEDINHASH(md5(password))\n\t\t\t\tsetUsername(\"\")\n\t\t\t\tsetPassword(\"\")\n\t\t\t\tsetRememberMe(false)\n\t\t\t} else {\n\t\t\t\tsetError(\"Could not authenticate!\")\n\t\t\t}\n\t\t})\n\t\t.catch((err)=>{\n\t\t\tsetError(err?.message??err);\n\t\t})\n\t\t.then(()=>{\n\t\t\tsetLoading(false)\n\t\t})\n\t}\n\n\treturn <>\n\t\n\t{loading?\n\t\t\"\"\n\t\t:<>

    {error}

    \n\t\t{setUsername(p.currentTarget.value)}} placeholder=\"Username\" tooltip=\"Enter a username (4-20 characters, a-z and _ only)\"/>
    \n\t\t{setPassword(p.currentTarget.value)}} placeholder=\"Password\" tooltip=\"Enter a password (6 or more characters)\"/>
    \n\t\t{setPassword2(p.currentTarget.value)}} placeholder=\"Verify Password\" tooltip=\"Enter password again.\"/>
    \n\t\t{setEmail(p.currentTarget.value)}} placeholder=\"email@example.com\" tooltip=\"This is used to send you password reset emails.\"/>
    \n\t\t{setRememberMe(p.currentTarget.checked)}}/>
    \n\t\t\n\t}\n\t
    \n}\n\n\nfunction App() {\n\t\n\tconst [author] = useState(\"Dudley\")\n\tconst [buildName] = useState(\"Fatimah\")\n\tconst [className] = useState(\"Ranger\")\n\tconst [secondaryClassName] = useState(\"Force\")\n\tconst [classLv] = useState(20)\n\tconst [secondaryClassLv] = useState(15)\n\t\t\n\t\n\tconst [bp] = useState(1330)\n\tconst [hp] = useState(388)\n\tconst [pp] = useState(154)\n\tconst [weaponTotalAtk] = useState(282)\n\tconst [baseAtk] = useState(650)\n\tconst [statDisplayAtk,setstatDisplayAtk] = useState(282)\n\n\tuseEffect(()=>{\n\t\tsetstatDisplayAtk(Number(weaponTotalAtk)+Number(baseAtk))\n\t},[weaponTotalAtk,baseAtk])\n\n\tconst [def] = useState(932)\n\tconst [weaponUp1] = useState(0.317)\n\tconst [weaponUp2] = useState(0.241)\n\tconst [weaponUp3] = useState(0.241)\n\tconst [damageResist] = useState(0.18)\n\tconst [burnResist] = useState(0)\n\tconst [shockResist] = useState(0)\n\tconst [panicResist] = useState(0)\n\tconst [stunResist] = useState(0)\n\tconst [freezeResist] = useState(0)\n\tconst [blindResist] = useState(0)\n\tconst [poisonResist] = useState(0)\n\t\n\tconst [TESTMODE,setTESTMODE] = useState(false)\n\tconst [DATA,setDATA] = useState(undefined)\n\tconst [DATAID,setDATAID] = useState({GetData:()=>{}})\n\tconst [update,setUpdate] = useState(false)\n\n\tconst [LOGGEDINUSER,setLOGGEDINUSER] = useState(cookies.get(\"username\"))\n\tconst [LOGGEDINHASH,setLOGGEDINHASH] = useState(cookies.get(\"password\"))\n\n\tconst PANELPATHWBUILD = process.env.PUBLIC_URL+\"/test/:BUILDID\"\n\tconst PANELPATH = process.env.PUBLIC_URL+\"/test\"\n\n\tfunction GetData(table,row,col,id){\n\t\tif (row===undefined) {row=''}\n\t\tif (col===undefined) {col=''}\n\t\tvar data = id?DATAID:DATA\n\t\tif (!data) {\n\t\t\treturn \"no data\"\n\t\t} else {\n\t\t\treturn data!==undefined?data[table]!==undefined?data[table][row]!==undefined?data[table][row][col]!==undefined?data[table][row][col]:data[table][row]:data[table]:data:\"no data\"\n\t\t}\n\t}\n\t\n\tuseEffect(()=>{\n\t\tif (update) {\n\t\t\tsetUpdate(false)\n\t\t\taxios.get(GetBackendURL({TESTMODE:TESTMODE})+\"/data\")\n\t\t\t.then((data)=>{\n\t\t\t\tsetDATA(data.data)\n\t\t\t})\n\t\t\taxios.get(GetBackendURL({TESTMODE:TESTMODE})+\"/dataid\")\n\t\t\t.then((data)=>{\n\t\t\t\tsetDATAID(data.data)\n\t\t\t})\n\t\t}\n\t},[update,TESTMODE])\n\n\tuseEffect(()=>{\n\t\tsetLOGGEDINUSER(cookies.get(\"username\"))\n\t\tsetLOGGEDINHASH(cookies.get(\"password\"))\n\t\taxios.get(GetBackendURL({TESTMODE:TESTMODE})+\"/data\")\n\t\t.then((data)=>{\n\t\t\tsetDATA(data.data)\n\t\t})\n\t\taxios.get(GetBackendURL({TESTMODE:TESTMODE})+\"/dataid\")\n\t\t.then((data)=>{\n\t\t\tsetDATAID(data.data)\n\t\t})\n\t},[TESTMODE])\n\n return (\n \t<>\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{APP_TITLE+\" - Admin Panel\"}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{APP_TITLE+\" - Login\"}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{APP_TITLE+\" - Register\"}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{APP_TITLE+\" - Builds\"}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{APP_TITLE}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t

    {GetData(\"site_data\",\"h1\",\"data\")}

    {GetData(\"site_data\",\"h2\",\"data\")}

    \"\"/\n\t\t\t\t{GetData(\"site_data\",\"UNDER_CONSTRUCTION_TEXT\",\"data\")}


    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\n );\n}\n\nexport default App;\n","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}