(this["webpackJsonponi-calc"]=this["webpackJsonponi-calc"]||[]).push([[0],{163:function(e,t,a){e.exports=a(181)},168:function(e,t,a){},181:function(e,t,a){"use strict";a.r(t);var n=a(0),r=a.n(n),i=a(15),u=a.n(i),l=(a(168),a(2)),o=a(5),c=a(115);function s(e){var t=e.filter((function(e){return e.capacity&&e.capacity.resources&&e.capacity.resources.value>0&&e.quantity>0}));return{value:p(t,"resources"),buildings:t}}function m(e){var t=e.filter((function(e){return e.capacity&&e.capacity.power&&e.capacity.power.value>0&&e.quantity>0}));return{value:p(t,"power"),buildings:t}}function p(e,t){return 0===e.length?0:e.map((function(e){return(e.capacity[t].value||0)*e.quantity})).reduce((function(e,t){return e+t}))}var d=a(76);function g(e,t){var a=0;return"number"===typeof t?a=t:("survival"===e&&"number"===typeof t.survival&&(a=t.survival),"no-sweat"===e&&"number"===typeof t.noSweat&&(a=t.noSweat)),a}function f(e){return 0===e.length?0:e.map((function(e){return e.valueExtended||0})).reduce((function(e,t){return e+t}))}function v(e,t,a){return"desc"===a?Object(d.a)(e).sort((function(e,a){return a[t]0&&e.quantity>0}));return{value:E(t,"usage"),buildings:t}}function b(e){var t=e.filter((function(e){return e.power.generation>0&&e.quantity>0}));return{value:E(t,"generation"),buildings:t}}function E(e,t){return 0===e.length?0:e.map((function(e){return e.power[t]*e.utilization/100*e.quantity})).reduce((function(e,t){return e+t}))}function O(e,t){if(0===t.filter((function(e){return e.quantity>0})).length)return e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:0})}));var a=function(e){var t=e.filter((function(e){return e.quantity>0&&e.isRaw}));return 0===t.length?[]:t.map((function(e){return e.requirements.map((function(t){return Object(l.a)(Object(l.a)({},t),{},{food:e,quantity:e.quantity})}))})).reduce((function(e,t){return e.concat(t)})).filter((function(e){return"Plant"===e.type}))}(t),n=function(e){var t=e.filter((function(e){return e.isRaw}));return function(e,t){if(t.length>0&&e.length>0){var a=function(e,t){return e.map((function(e){return e.inputs.map((function(a){var n=t.find((function(e){return e.name===a.name}));return n?Object(l.a)(Object(l.a)({},n),{},{name:e.name,quantity:e.quantity*a.value}):null}))})).reduce((function(e,t){return e.concat(t)})).filter((function(e){return e}))}(e,t);return a.length>0?function(e){return e.map((function(e){return e.requirements.map((function(t){return Object(l.a)(Object(l.a)({},t),{},{food:e,quantity:e.quantity})}))})).reduce((function(e,t){return e.concat(t)})).filter((function(e){return"Plant"===e.type}))}(a):[]}return[]}(e.filter((function(e){return e.quantity>0&&!e.isRaw})),t)}(t);return e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{rawFood:a.filter((function(t){return t.name===e.name})),preparedFood:n.filter((function(t){return t.name===e.name})),quantity:(t=h(e.name,a,n),r=e.growthRate.value,i=e.yield,t/(i/r))});var t,r,i}))}function h(e,t,a){var n=0,r=t.filter((function(t){return t.name===e}));r&&r.length>0&&(n+=r.map((function(e){return e.quantity})).reduce((function(e,t){return e+t})));var i=a.filter((function(t){return t.name===e}));return i&&i.length>0&&(n+=i.map((function(e){return e.quantity})).reduce((function(e,t){return e+t}))),n}function j(e,t,a){var n=e.filter((function(e){return e.quantity>0}));return 0===n.length?[]:n.map((function(e){return e[t].filter((function(e){return e.name===a})).map((function(t){return function(e,t){return Object(l.a)(Object(l.a)({},t),{},{plant:e,valueExtended:e.quantity*t.value})}(e,t)}))})).reduce((function(e,t){return e.concat(t)}))}var w=function(e,t,a,n){var r=function(e,t,a){var n=Object(l.a)(Object(l.a)({},t),{},{quantity:a,traits:t.traits.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:e.quantity>a?a:e.quantity})}))});return n.caloriesRequired=R(e,n),z(n),n}(e,a,n);return{resources:K(t,r),dupes:r}},C=function(e,t,a,n,r){var i=function(e,t,a,n){var r=Object(l.a)(Object(l.a)({},t),{},{traits:t.traits.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:e.name===a?n>t.quantity?t.quantity:n:e.quantity})}))});return r.caloriesRequired=R(e,r),z(r),r}(e,a,n,r);return{resources:K(t,i),dupes:i}},x=function(e,t,a,n){var r=function(e,t,a){var n=Object(l.a)({},e);return""===t||(n[t]=a,z(n)),n}(t,a,n);return{resources:K(e,r),dupes:r}},N=function(e,t){var a=function(e){var t=k(e);return z(t),t}(t);return{resources:K(e,a),dupes:a}};function I(e,t,a){return a&&a.traits?function(e,t,a){var n=Object(l.a)(Object(l.a)({},t),{},{waterValue:a.waterValue||0,pollutedWaterValue:a.pollutedWaterValue||0,dirtValue:a.dirtValue||0,pollutedDirtValue:a.pollutedDirtValue||0,quantity:a.total||0,traits:t.traits.map((function(e){if(a.traits&&a.traits.length>0){var t=a.traits.find((function(t){return t.name===e.name}));return Object(l.a)(Object(l.a)({},e),{},{quantity:(null===t||void 0===t?void 0:t.quantity)||0})}return e}))});return n.caloriesRequired=R(e,n),n}(e,t,a):k(t)}function k(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:0,waterValue:0,pollutedWaterValue:0,dirtValue:0,pollutedDirtValue:0,traits:e.traits&&e.traits.length>0?e.traits.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:0})})):[]})}function S(e,t,a){return e[t].filter((function(e){return e.name===a})).map((function(t){return Object(l.a)(Object(l.a)({},t),{},{valueExtended:t.value*e.quantity,dupe:{reference:"Base Dupe",quantity:e.quantity}})}))}function q(e,t,a){var n=e.filter((function(e){return e.quantity>0}));return 0===n.length?[]:n.map((function(e){return e[t].map((function(t){return Object(l.a)(Object(l.a)({},t),{},{dupe:{reference:e.name,quantity:e.quantity},valueExtended:t.value*e.quantity})}))})).reduce((function(e,t){return e.concat(t)})).filter((function(e){return e.name===a}))}var P=[{name:"pollutedWaterValue",title:"Polluted Water"},{name:"pollutedDirtValue",title:"Polluted Dirt"},{name:"waterValue",title:"Water"},{name:"dirtValue",title:"Dirt"}];function W(e,t,a){var n=[];return P.forEach((function(r){if(r.title===a&&(e[r.name]<0&&"inputs"===t||e[r.name]>0&&"outputs"===t)){var i="inputs"===t?-e[r.name]/600:e[r.name]/600;n.push({name:r.title,value:i,unit:"g",rate:"per second",valueExtended:i*e.quantity,dupe:{reference:"Waste",quantity:e.quantity}})}})),n}function R(e,t){return function(e,t){if(!t.inputs)return 0;var a=t.inputs.filter((function(e){return"Food"===e.name}));return 0===a.length?0:a.map((function(a){return g(e,a.value)*t.quantity})).reduce((function(e,t){return e+t}))}(e,t)+function(e){var t=e.map((function(e){return e.inputs.map((function(t){return Object(l.a)(Object(l.a)({},t),{},{quantity:e.quantity})}))})).reduce((function(e,t){return e.concat(t)})).filter((function(e){return"Food"===e.name}));return 0===t.length?0:t.map((function(e){return e.value*e.quantity})).reduce((function(e,t){return e+t}))}(t.traits)}function z(e){localStorage.setItem("dupes",JSON.stringify({total:e.quantity,waterValue:e.waterValue||0,pollutedWaterValue:e.pollutedWaterValue||0,dirtValue:e.dirtValue||0,pollutedDirtValue:e.pollutedDirtValue||0,traits:e.traits.map((function(e){return{name:e.name,quantity:e.quantity||0}}))}))}var T=function(e,t,a,n,r){var i=function(e,t,a){var n=e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:e.name===t?a:e.quantity})}));return L(n),n}(a,n,r),u=O(t,i);return{food:i,resources:X(e,u,i),plants:u}},B=function(e,t,a){var n=function(e){var t=M(e);return L(t),t}(a),r=O(t,n);return{resources:X(e,r,n),food:n,plants:r}};function D(e,t){return t?function(e,t){return e.map((function(e){var a=t.find((function(t){return t.name===e.name}));return Object(l.a)(Object(l.a)({},e),{},{quantity:a&&a.quantity?a.quantity:0})}))}(e,t):M(e)}function M(e){return e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:0})}))}function F(e,t,a){if("inputs"!==t&&"outputs"!==t)throw new Error("Type must be inputs or outputs");var n=e.filter((function(e){return e.quantity>0}));return 0===n.length?[]:n.map((function(e){return e[t].filter((function(e){return e.name===a})).map((function(t){return Object(l.a)(Object(l.a)({},t),{},{food:e,valueExtended:G(t.value,e.quantity)})}))})).reduce((function(e,t){return e.concat(t)}))}function G(e,t){return t*e/600}function L(e){localStorage.setItem("food",JSON.stringify(e.map((function(e){return{name:e.name,quantity:e.quantity}}))))}var A=function(e,t,a){var n=function(e,t){if(!e.inputted||!t)return e;var a=Object(d.a)(e.inputted);a.push(Object(l.a)({},t));var n=Object(l.a)(Object(l.a)({},e),{},{inputted:a});return _(n),n}(t,a);return{resources:$(e,n),geysers:n}},V=function(e,t,a){var n=function(e,t){var a=e.inputted.filter((function(e){return e!==t})),n=Object(l.a)(Object(l.a)({},e),{},{inputted:a});return _(n),n}(t,a);return{resources:$(e,n),geysers:n}},U=function(e,t){var a=function(e){return J(e.listing)}(t);return{resources:$(e,a),geysers:a}};function Q(e,t){return t&&t.length>0?function(e,t){return{listing:e,inputted:t.map((function(t){var a=e.find((function(e){return e.name===t.name}));return Object(l.a)(Object(l.a)({},t),{},{outputs:(null===a||void 0===a?void 0:a.outputs)||[]})}))}}(e,t):J(e)}function J(e){return{listing:e,inputted:[]}}function H(e){return e.amount*(e.eruptionDuration/e.eruptionEvery)*(e.activeDuration/e.activeEvery)}function _(e){localStorage.setItem("geysers",JSON.stringify(e.inputted.map((function(e){return{name:e.name,amount:e.amount,eruptionDuration:e.eruptionDuration,eruptionEvery:e.eruptionEvery,activeDuration:e.activeDuration,activeEvery:e.activeEvery}}))))}function Y(e,t){return e.map((function(e){var a=Object(l.a)(Object(l.a)({},e),ee(e,t));return a.totalInput=re(a),a.totalOutput=ie(a),Object(l.a)(Object(l.a)({},a),{},{totalIO:a.totalOutput-a.totalInput})}))}function K(e,t){return e.map((function(e){var a=Object(l.a)(Object(l.a)({},e),Z(e,t));return a.totalInput=re(a),a.totalOutput=ie(a),Object(l.a)(Object(l.a)({},a),{},{totalIO:a.totalOutput-a.totalInput})}))}function X(e,t,a){return e.map((function(e){var n=Object(l.a)(Object(l.a)(Object(l.a)({},e),te(e,a)),ae(e,t));return n.totalInput=re(n),n.totalOutput=ie(n),Object(l.a)(Object(l.a)({},n),{},{totalIO:n.totalOutput-n.totalInput})}))}function $(e,t){return e.map((function(e){var a=Object(l.a)(Object(l.a)({},e),ne(e,t));return a.totalInput=re(a),a.totalOutput=ie(a),Object(l.a)(Object(l.a)({},a),{},{totalIO:a.totalOutput-a.totalInput})}))}function Z(e,t){var a=function(e,t){var a=S(e,"inputs",t),n=q(e.traits,"inputs",t),r=W(e,"inputs",t);return a.concat(n).concat(r)}(t,e.name),n=function(e,t){var a=S(e,"outputs",t),n=q(e.traits,"outputs",t),r=W(e,"outputs",t);return a.concat(n).concat(r)}(t,e.name),r=f(a),i=f(n);return{dupeInputs:a,dupeOutputs:n,totalDupeInput:r,totalDupeOutput:i,totalDupeIO:i-r}}function ee(e,t){var a=function(e,t){return me(e,"inputs",t)}(t,e.name),n=function(e,t){return me(e,"outputs",t)}(t,e.name),r=f(a),i=f(n);return{buildingInputs:a,buildingOutputs:n,totalBuildingInput:r,totalBuildingOutput:i,totalBuildingIO:i-r}}function te(e,t){var a=function(e,t){return F(e,"inputs",t)}(t,e.name),n=[],r=f(a),i=f(n);return{foodInputs:a,foodOutputs:n,totalFoodInput:r,totalFoodOutput:i,totalFoodIO:i-r}}function ae(e,t){var a=function(e,t){return j(e,"inputs",t)}(t,e.name),n=function(e,t){return j(e,"outputs",t)}(t,e.name),r=f(a),i=f(n);return{plantInputs:a,plantOutputs:n,totalPlantInput:r,totalPlantOutput:i,totalPlantIO:i-r}}function ne(e,t){var a=[],n=function(e,t){return e.inputted.map((function(a){var n=e.listing.find((function(e){return e.name===a.name}));if(void 0===n)return null;var r=n.outputs.filter((function(e){return e.name===t}));return 0===r.length?null:r.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{value:H(a),valueExtended:H(a)})})).reduce((function(e,t){return e.concat(t)}))})).filter((function(e){return e}))}(t,e.name),r=f(a),i=f(n);return{geyserInputs:a,geyserOutputs:n,totalGeyserInput:r,totalGeyserOutput:i,totalGeyserIO:i-r}}function re(e){return e.totalDupeInput+e.totalBuildingInput+e.totalPlantInput+e.totalFoodInput+e.totalGeyserInput}function ie(e){return e.totalDupeOutput+e.totalBuildingOutput+e.totalPlantOutput+e.totalFoodOutput+e.totalGeyserOutput}var ue=function(e,t,a,n){var r=function(e,t,a){var n=e.map((function(e){return e.name===t?Object(l.a)(Object(l.a)({},e),{},{quantity:e.name===t?a:e.quantity}):e}));return pe(n),n}(t,a,n);return{buildings:r,resources:Y(e,r),powerGeneration:b(r),powerUsage:y(r),powerCapacity:m(r),resourcesCapacity:s(r)}},le=function(e,t,a,n){var r=function(e,t,a){var n=e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{utilization:e.name===t?a:e.utilization})}));return pe(n),n}(t,a,n);return{buildings:r,resources:Y(e,r),powerGeneration:b(r),powerUsage:y(r)}},oe=function(e,t){var a=function(e){var t=se(e);return pe(t),t}(t);return{resources:Y(e,a),buildings:a,powerGeneration:{value:0,buildings:[]},powerUsage:{value:0,buildings:[]},resourcesCapacity:{value:0,buildings:[]},powerCapacity:{value:0,buildings:[]}}};function ce(e,t){return t?function(e,t){return e.map((function(e){var a=t.find((function(t){return t.name===e.name}));return void 0===a?Object(l.a)(Object(l.a)({},e),{},{quantity:0,utilization:e.hasConsistentIO?0:100}):Object(l.a)(Object(l.a)({},e),{},{quantity:a.quantity||0,utilization:a.utilization?a.utilization:e.hasConsistentIO?0:100})}))}(e,t):se(e)}function se(e){return e.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{quantity:0,utilization:e.hasConsistentIO?0:100})}))}function me(e,t,a){if("inputs"!==t&&"outputs"!==t)throw new Error("Type must be inputs or outputs");var n=e.filter((function(e){return e.quantity>0}));return 0===n.length?[]:n.map((function(e){return function(e,t,a){if(void 0===e[t])return[];var n=e[t].filter((function(e){return e.name===a}));return 0===n.length?[]:n.map((function(t){var a,n,r,i=function(e){var t=e.value;switch(e.unit){case"g":break;case"mg":t*=.001;break;case"kg":t*=1e3;break;default:t=0}switch(e.rate){case"per second":break;case"per cycle":t/=600;break;default:t=0}return{value:t,unit:"g",rate:"per second"}}(t);return Object(l.a)(Object(l.a)({},t),{},{building:e,valueExtended:(a=e.quantity,n=e.utilization,r=i.value,a*r*n/100),rate:i.rate})}))}(e,t,a)})).reduce((function(e,t){return e.concat(t)}))}function pe(e){localStorage.setItem("buildings",JSON.stringify(e.map((function(e){return{name:e.name,quantity:e.quantity?e.quantity:0,utilization:e.utilization?e.utilization:100}}))))}var de={setBuildingsLayout:function(){return function(e){return Object(l.a)(Object(l.a)({},e),function(e){var t="grid"===e?"table":"grid";return localStorage.setItem("layout",t),{buildingsLayout:t}}(e.buildingsLayout))}},collapseBuildingPanels:function(){return function(e){return Object(l.a)(Object(l.a)({},e),{},{collapseBuildingPanels:!0,collapseBuildingPanelsTrigger:e.collapseBuildingPanelsTrigger+1})}},expandBuildingPanels:function(){return function(e){return Object(l.a)(Object(l.a)({},e),{},{collapseBuildingPanels:!1,collapseBuildingPanelsTrigger:e.collapseBuildingPanelsTrigger-1})}},setBuildingQuantity:function(e,t){return function(a){return Object(l.a)(Object(l.a)({},a),ue(a.resources,a.buildings,e,t))}},setBuildingUtilization:function(e,t){return function(a){return Object(l.a)(Object(l.a)({},a),le(a.resources,a.buildings,e,t))}},sortBuildings:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),function(e,t,a,n){var r=t===a&&"desc"===n?"asc":"desc";return{buildings:v(e,a,r),buildingsOrderBy:a,buildingsOrder:r}}(t.buildings,t.buildingsOrderBy,e,t.buildingsOrder))}},clearBuildingInputs:function(){return function(e){return Object(l.a)(Object(l.a)({},e),oe(e.resources,e.buildings))}}},ge=[{category:"Base",name:"Automatic Dispenser",hasPerOperation:!1,hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Base",name:"Bunker Door",hasPerOperation:!1,hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Base",name:"Mechanized Airlock",hasPerOperation:!1,hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Base",name:"Smart Storage Bin",hasPerOperation:!1,hasConsistentIO:!1,capacity:{power:{},resources:{value:2e4,unit:"kg"}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Base",name:"Storage Bin",hasPerOperation:!1,hasConsistentIO:!0,capacity:{power:{},resources:{value:2e4,unit:"kg"}},power:{},inputs:[],outputs:[]},{category:"Base",name:"Transit Tube Access",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:960,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Oxygen",name:"Algae Terrarium",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{},inputs:[{name:"Algae",value:30,unit:"g",rate:"per second"},{name:"Water",value:300,unit:"g",rate:"per second"},{name:"Carbon Dioxide",value:333.33,unit:"mg",rate:"per second"}],outputs:[{name:"Oxygen",value:40,unit:"g",rate:"per second"},{name:"Polluted Water",value:290.33,unit:"g",rate:"per second"}]},{category:"Oxygen",name:"Carbon Skimmer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Water",value:1,unit:"kg",rate:"per second"},{name:"Carbon Dioxide",value:300,unit:"g",rate:"per second"}],outputs:[{name:"Polluted Water",value:1,unit:"kg",rate:"per second"}]},{category:"Oxygen",name:"Deodorizer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{},inputs:[{name:"Polluted Oxygen",value:100,unit:"g",rate:"per second"},{name:"Filtration Medium",value:133.33,unit:"g",rate:"per second"}],outputs:[{name:"Oxygen",value:90,unit:"g",rate:"per second"},{name:"Clay",value:143.33,unit:"g",rate:"per second"}]},{category:"Oxygen",name:"Electrolyzer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Water",value:1,unit:"kg",rate:"per second"}],outputs:[{name:"Oxygen",value:888,unit:"g",rate:"per second"},{name:"Hydrogen",value:112,unit:"g",rate:"per second"}]},{category:"Oxygen",name:"Oxygen Diffuser",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Algae",value:550,unit:"g",rate:"per second"}],outputs:[{name:"Oxygen",value:500,unit:"g",rate:"per second"}]},{category:"Oxygen",name:"Rust Deoxidizer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Rust",value:750,unit:"g",rate:"per second"},{name:"Salt",value:250,unit:"g",rate:"per second"}],outputs:[{name:"Oxygen",value:570,unit:"g",rate:"per second"},{name:"Chlorine",value:30,unit:"g",rate:"per second"},{name:"Iron Ore",value:400,unit:"g",rate:"per second"}]},{category:"Power",name:"Battery",hasConsistentIO:!0,capacity:{power:{value:10,unit:"kJ"},resources:{}},power:{},inputs:[],outputs:[]},{category:"Power",name:"Coal Generator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:600,unit:"W",rate:"per second"},inputs:[{name:"Coal",value:1,unit:"kg",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:20,unit:"g",rate:"per second"}]},{category:"Power",name:"Hydrogen Generator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:800,unit:"W",rate:"per second"},inputs:[{name:"Hydrogen",value:100,unit:"g",rate:"per second"}],outputs:[]},{category:"Power",name:"Jumbo Battery",hasConsistentIO:!0,capacity:{power:{value:40,unit:"kJ"},resources:{}},power:{},inputs:[],outputs:[]},{category:"Power",name:"Manual Generator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:400,unit:"W",rate:"per second"},inputs:[{name:"Dupe",value:1,unit:"each",rate:""}],outputs:[]},{category:"Power",name:"Natural Gas Generator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:800,unit:"W",rate:"per second"},inputs:[{name:"Natural Gas",value:90,unit:"g",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:22.5,unit:"g",rate:"per second"},{name:"Polluted Water",value:67.5,unit:"g",rate:"per second"}]},{category:"Power",name:"Petroleum Generator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:2e3,unit:"W",rate:"per second"},inputs:[{name:"Petroleum",value:2,unit:"kg",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:500,unit:"g",rate:"per second"},{name:"Polluted Water",value:750,unit:"g",rate:"per second"}]},{category:"Power",name:"Smart Battery",hasConsistentIO:!1,capacity:{power:{value:20,unit:"kJ"},resources:{}},power:{},inputs:[],outputs:[]},{category:"Power",name:"Solar Panel",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:380,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Power",name:"Steam Turbine",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:850,unit:"W",rate:"per second"},inputs:[{name:"Steam",value:2,unit:"kg",rate:"per second"}],outputs:[]},{category:"Power",name:"Wood Burner",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:0,generation:300,unit:"W",rate:"per second"},inputs:[{name:"Lumber",value:1.2,unit:"kg",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:170,unit:"g",rate:"per second"}]},{category:"Food",name:"Electric Grill",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Food",name:"Gas Range",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Natural Gas",value:100,unit:"g",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:25,unit:"g",rate:"per second"}]},{category:"Food",name:"Incubator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Food",name:"Microbe Musher",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Food",name:"Refrigerator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Plumbing",name:"Liquid Filter",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Plumbing",name:"Liquid Pump",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Plumbing",name:"Liquid Shutoff",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:10,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Plumbing",name:"Mini Liquid Pump",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Ventilation",name:"Gas Filter",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Ventilation",name:"Gas Pump",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Ventilation",name:"Gas Shutoff",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:10,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Ventilation",name:"Mini Gas Pump",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Refinement",name:"Algae Distiller",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Slime",value:600,unit:"g",rate:"per second"}],outputs:[{name:"Algae",value:200,unit:"g",rate:"per second"},{name:"Polluted Water",value:400,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Compost",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{},inputs:[{name:"Compostable",value:100,unit:"g",rate:"per second"}],outputs:[{name:"Dirt",value:100,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Ethanol Distiller",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Lumber",value:1,unit:"kg",rate:"per second"}],outputs:[{name:"Ethanol",value:500,unit:"g",rate:"per second"},{name:"Polluted Dirt",value:333.33,unit:"g",rate:"per second"},{name:"Carbon Dioxide",value:166.67,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Fertilizer Synthesizer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Polluted Water",value:39,unit:"g",rate:"per second"},{name:"Dirt",value:65,unit:"g",rate:"per second"},{name:"Phosphorite",value:26,unit:"g",rate:"per second"}],outputs:[{name:"Fertilizer",value:120,unit:"g",rate:"per second"},{name:"Natural Gas",value:10,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Glass Forge",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Sand",value:100,unit:"kg",rate:"per second"}],outputs:[{name:"Molten Glass",value:25,unit:"kg",rate:"per second"}]},{category:"Refinement",name:"Metal Refinery",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Liquid Coolant",value:400,unit:"kg",rate:"per second"}],outputs:[]},{category:"Refinement",name:"Molecular Forge",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Refinement",name:"Oil Refinery",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:480,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Crude Oil",value:10,unit:"kg",rate:"per second"}],outputs:[{name:"Petroleum",value:5,unit:"kg",rate:"per second"},{name:"Natural Gas",value:90,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Oxylite Refinery",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Oxygen",value:600,unit:"g",rate:"per second"},{name:"Gold",value:3,unit:"g",rate:"per second"}],outputs:[{name:"Oxylite",value:600,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Polymer Press",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Petroleum",value:833.33,unit:"g",rate:"per second"}],outputs:[{name:"Plastic",value:500,unit:"g",rate:"per second"},{name:"Steam",value:8.33,unit:"g",rate:"per second"},{name:"Carbon Dioxide",value:8.33,unit:"g",rate:"per second"}]},{category:"Refinement",name:"Rock Crusher",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Refinement",name:"Water Sieve",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Polluted Water",value:5,unit:"kg",rate:"per second"},{name:"Filtration Medium",value:1,unit:"kg",rate:"per second"}],outputs:[{name:"Water",value:5,unit:"kg",rate:"per second"},{name:"Polluted Dirt",value:200,unit:"g",rate:"per second"}]},{category:"Medicine",name:"Disease Clinic",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Medicine",name:"Massage Table",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Furniture",name:"Arcade Cabinet",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Furniture",name:"Ceiling Light",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:10,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Furniture",name:"Espresso Machine",hasPerOperation:!0,hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:480,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Furniture",name:"Jukebot",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:960,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Furniture",name:"Lamp",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:8,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Atmo Suit Dock",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Exosuit Forge",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:480,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Jet Suit Dock",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Research Station",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Skill Scrubber",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:480,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Super Computer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Telescope",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Textile Loom",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Stations",name:"Virtual Planetarium",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Utilities",name:"Ice Maker",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:60,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Utilities",name:"Liquid Tepidizer",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:960,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Utilities",name:"Oil Well",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[{name:"Water",value:1,unit:"kg",rate:"per second"}],outputs:[{name:"Crude Oil",value:3.33,unit:"kg",rate:"per second"},{name:"Natural Gas",value:33.3,unit:"g",rate:"per second"}]},{category:"Utilities",name:"Space Heater",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Utilities",name:"Thermo Aquatuner",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Utilities",name:"Thermo Regulator",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:240,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Automation",name:"Duplicant Checkpoint",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:10,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Automation",name:"Space Scanner",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Shipping",name:"Auto-Sweeper",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Shipping",name:"Conveyor Loader",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Shipping",name:"Conveyor Shutoff",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:10,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Shipping",name:"Robo-Miner",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:120,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]},{category:"Rocketry",name:"Gantry",hasConsistentIO:!1,capacity:{power:{},resources:{}},power:{usage:1200,generation:0,unit:"W",rate:"per second"},inputs:[],outputs:[]}],fe={inputs:[{name:"Oxygen",value:100,unit:"g",rate:"per second"},{name:"Food",value:{survival:1e3,noSweat:500},unit:"kcal",rate:"per cycle"}],outputs:[{name:"Carbon Dioxide",value:20,unit:"g",rate:"per second"}],traits:[{name:"Bottomless Stomach",inputs:[{name:"Food",value:500,unit:"kcal",rate:"per cycle"}],outputs:[]},{name:"Diver's Lung",inputs:[{name:"Oxygen",value:-25,unit:"g",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:-5,unit:"g",rate:"per second"}]},{name:"Flatulence",inputs:[],outputs:[{name:"Natural Gas",value:5,unit:"g",rate:"per second"}]},{name:"Mouth Breather",inputs:[{name:"Oxygen",value:100,unit:"g",rate:"per second"}],outputs:[{name:"Carbon Dioxide",value:20,unit:"g",rate:"per second"}]}]},ve=[{name:"Pincha Peppernut",isRaw:!0,calories:0,quality:0,requirements:[{type:"Plant",name:"Pincha Pepper"}],inputs:[]},{name:"Sleet Wheat Grain",isRaw:!0,calories:0,quality:0,requirements:[{type:"Plant",name:"Sleet Wheat"}],inputs:[]},{name:"Mush Bar",isRaw:!1,calories:800,quality:-1,requirements:[],inputs:[{name:"Water",value:93.8,unit:"g",rate:"per item"},{name:"Dirt",value:93.8,unit:"g",rate:"per item"}]},{name:"Pickled Meal",isRaw:!1,calories:1800,quality:-1,requirements:[],inputs:[{name:"Meal Lice",value:1,rate:"per item"}]},{name:"Meal Lice",isRaw:!0,calories:1e3,quality:-1,requirements:[{type:"Plant",name:"Mealwood"}],inputs:[]},{name:"Meat",isRaw:!0,calories:1e3,quality:-1,requirements:[{type:"Critter",name:"Adult Hatch"}],inputs:[]},{name:"Mush Fry",isRaw:!1,calories:1050,quality:0,requirements:[],inputs:[{name:"Mush Bar",value:1,rate:"per item"}]},{name:"Liceloaf",isRaw:!1,calories:1700,quality:0,requirements:[],inputs:[{name:"Meal Lice",value:1,unit:"each",rate:"per item"},{name:"Water",value:50,unit:"kg",rate:"per item"}]},{name:"Bristle Berry",isRaw:!0,calories:1e3,quality:0,requirements:[{type:"Plant",name:"Bristle Blossom"}],inputs:[]},{name:"Mushroom",isRaw:!0,calories:2400,quality:0,requirements:[{type:"Plant",name:"Dusk Cap"}],inputs:[]},{name:"Fried Mushroom",isRaw:!1,calories:2800,quality:0,requirements:[],inputs:[{name:"Mushroom",value:1,unit:"each",rate:"per item"}]},{name:"Gristle Berry",isRaw:!1,calories:2050,quality:1,requirements:[],inputs:[{name:"Bristle Berry",value:1,unit:"each",rate:"per item"}]},{name:"Omelette",isRaw:!1,calories:2800,quality:2,requirements:[],inputs:[{name:"Raw Egg",value:1,unit:"each",rate:"per item"}]},{name:"Frost Bun",isRaw:!1,calories:1200,quality:2,requirements:[],inputs:[{name:"Sleet Wheat Grain",value:3,unit:"each",rate:"per item"}]},{name:"Berry Sludge",isRaw:!1,calories:4e3,quality:3,requirements:[],inputs:[{name:"Bristle Berry",value:1,unit:"each",rate:"per item"},{name:"Sleet Wheat Grain",value:5,unit:"each",rate:"per item"}]},{name:"Stuffed Berry",isRaw:!1,calories:4e3,quality:4,requirements:[],inputs:[{name:"Pincha Peppernut",value:2,unit:"each",rate:"per item"},{name:"Bristle Berry",value:2,unit:"each",rate:"per item"}]},{name:"BBQ",isRaw:!1,calories:4e3,quality:5,requirements:[],inputs:[{name:"Pincha Peppernut",value:1,unit:"each",rate:"per item"},{name:"Meat",value:1,unit:"each",rate:"per item"}]},{name:"Pepper Bread",isRaw:!1,calories:4e3,quality:5,requirements:[],inputs:[{name:"Pincha Peppernut",value:1,unit:"each",rate:"per item"},{name:"Sleet Wheat Grain",value:10,unit:"each",rate:"per item"}]}],ye=[{name:"Carbon Dioxide Geyser",temp:{value:-55.15,unit:"C"},maxPressure:{value:50,unit:"kg"},outputs:[{name:"Carbon Dioxide"}]},{name:"Carbon Dioxide Vent",temp:{value:500,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Carbon Dioxide"}]},{name:"Chlorine Gas Vent",temp:{value:60,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Chlorine"}]},{name:"Cool Slush Geyser",temp:{value:-10,unit:"C"},maxPressure:{value:500,unit:"kg"},outputs:[{name:"Polluted Water"}]},{name:"Cool Steam Vent",temp:{value:110,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Steam"}]},{name:"Copper Volcano",temp:{value:2226.85,unit:"C"},maxPressure:{value:150,unit:"kg"},outputs:[{name:"Copper"}]},{name:"Gold Volcano",temp:{value:2626.85,unit:"C"},maxPressure:{value:150,unit:"kg"},outputs:[{name:"Gold"}]},{name:"Hot Polluted Oxygen Vent",temp:{value:500,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Polluted Oxygen"}]},{name:"Hydrogen Vent",temp:{value:500,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Hydrogen"}]},{name:"Infectious Polluted Oxygen Vent",temp:{value:60,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Polluted Oxygen"}]},{name:"Iron Volcano",temp:{value:2626.85,unit:"C"},maxPressure:{value:150,unit:"kg"},outputs:[{name:"Iron"}]},{name:"Leaky Oil Fissure",temp:{value:326.85,unit:"C"},maxPressure:{value:50,unit:"kg"},outputs:[{name:"Crude Oil"}]},{name:"Minor Volcano",temp:{value:1726.85,unit:"C"},maxPressure:{value:150,unit:"kg"},outputs:[{name:"Magma"}]},{name:"Natural Gas Geyser",temp:{value:150,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Natural Gas"}]},{name:"Polluted Water Vent",temp:{value:30,unit:"C"},maxPressure:{value:500,unit:"kg"},outputs:[{name:"Polluted Water"}]},{name:"Steam Vent",temp:{value:500,unit:"C"},maxPressure:{value:5,unit:"kg"},outputs:[{name:"Steam"}]},{name:"Volcano",temp:{value:1726.85,unit:"C"},maxPressure:{value:150,unit:"kg"},outputs:[{name:"Magma"}]},{name:"Water Geyser",temp:{value:95,unit:"C"},maxPressure:{value:500,unit:"kg"},outputs:[{name:"Water"}]}],be=[{name:"Bristle Blossom",growthRate:{value:6,rate:"cycle"},yield:1,inputs:[{name:"Water",value:20,unit:"kg",rate:"per cycle"}],outputs:[]},{name:"Dusk Cap",growthRate:{value:7.5,rate:"cycle"},yield:1,inputs:[{name:"Slime",value:4,unit:"kg",rate:"per cycle"}],outputs:[]},{name:"Mealwood",growthRate:{value:3,rate:"cycle"},yield:1,inputs:[{name:"Dirt",value:10,unit:"kg",rate:"per cycle"}],outputs:[]},{name:"Pincha Pepper",growthRate:{value:8,rate:"cycle"},yield:4,inputs:[{name:"Polluted Water",value:35,unit:"kg",rate:"per cycle"},{name:"Phosphorite",value:1,unit:"kg",rate:"per cycle"}],outputs:[]},{name:"Sleet Wheat",growthRate:{value:18,rate:"cycle"},yield:18,inputs:[{name:"Water",value:20,unit:"kg",rate:"per cycle"},{name:"Dirt",value:5,unit:"kg",rate:"per cycle"}],outputs:[]}],Ee=[{name:"Algae"},{name:"Carbon Dioxide"},{name:"Chlorine"},{name:"Clay"},{name:"Coal"},{name:"Crude Oil"},{name:"Dirt"},{name:"Fertilizer"},{name:"Hydrogen"},{name:"Magma"},{name:"Natural Gas"},{name:"Oxygen"},{name:"Petroleum"},{name:"Phosphorite"},{name:"Polluted Dirt"},{name:"Polluted Oxygen"},{name:"Polluted Water"},{name:"Sand"},{name:"Slime"},{name:"Steam"},{name:"Water"}];function Oe(e){return e?{value:e.value||0,unit:e.unit||""}:{value:0,unit:""}}function he(e){return e.map((function(e){return function(e){return e?{name:e.name||"",value:e.value||0,valueExtended:e.value||0,unit:e.unit||"",rate:e.rate||""}:{name:"",value:0,valueExtended:0,unit:"",rate:""}}(e)}))}var je={getData:function(){return function(e){var t=localStorage.getItem("dupes"),a=localStorage.getItem("food"),n=localStorage.getItem("geysers"),r=localStorage.getItem("layout"),i=localStorage.getItem("settings");localStorage.removeItem("quantities"),localStorage.removeItem("inputs");try{t=JSON.parse(t)}catch(E){throw localStorage.removeItem("dupes"),E}try{a=JSON.parse(a)}catch(E){throw localStorage.removeItem("food"),E}try{n=JSON.parse(n)}catch(E){throw localStorage.removeItem("geysers"),E}try{i=JSON.parse(i)}catch(E){throw localStorage.removeItem("settings"),E}null===r&&(r="grid");var u,o=i||ze.settings,c=I(o.gameMode,fe,t),p=ce((u=ge).constructor===Array?u.map((function(e){var t,a;return{category:e.category||"",categoryImgUrl:"/images/building-categories/"+e.category.toLowerCase().split(" ").join("-")+".png",name:e.name||"",imgUrl:"/images/buildings/"+e.name.toLowerCase().split(" ").join("-")+".png",wikiUrl:"https://oxygennotincluded.gamepedia.com/"+e.name.split("-").join("_"),capacity:(t=e.capacity,{power:Oe(t.power),resources:Oe(t.resources)}),hasConsistentIO:e.hasConsistentIO||!1,power:(a=e.power,a?{usage:a.usage||0,generation:a.generation||0,unit:a.unit||"",rate:a.rate||""}:{usage:0,generation:0,unit:"",rate:""}),inputs:he(e.inputs),outputs:he(e.outputs),quantity:e.quantity||0,utilization:e.utilization||0}})):[],function(e){if(e){try{e=JSON.parse(e)}catch(E){throw localStorage.removeItem("buildings"),E}return e.map((function(e){return function(e){return e?{name:e.name||"",quantity:e.quantity||0,utilization:e.utilization||0}:{name:"",quantity:0,utilization:0}}(e)}))}return[]}(localStorage.getItem("buildings"))),d=D(ve,a),g=Q(ye,n),f=O(be,d),v=function(e){e.gameMode;var t=e.resources,a=e.plants,n=e.dupes,r=e.buildings,i=e.food,u=e.geysers;return t.map((function(e){var t=Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)({},e),Z(e,n)),ee(e,r)),te(e,i)),ae(e,a)),ne(e,u));return t.totalInput=re(t),t.totalOutput=ie(t),Object(l.a)(Object(l.a)({},t),{},{totalIO:t.totalOutput-t.totalInput,unitOfMeasure:"g/s"})}))}({gameMode:o.gameMode,resources:Ee,plants:f,dupes:c,buildings:p,food:d,geysers:g});return Object(l.a)(Object(l.a)({},e),{},{settings:o,buildingsLayout:r,resources:v,plants:f,dupes:c,buildings:p,food:d,geysers:g,powerGeneration:b(p),powerUsage:y(p),powerCapacity:m(p),resourcesCapacity:s(p)})}}},we={setDupesTotalQuantity:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),w(t.settings.gameMode,t.resources,t.dupes,e))}},setDupesTraitQuantity:function(e,t){return function(a){return Object(l.a)(Object(l.a)({},a),C(a.settings.gameMode,a.resources,a.dupes,e,t))}},setDupeWaste:function(e,t){return function(a){return Object(l.a)(Object(l.a)({},a),x(a.resources,a.dupes,e,t))}},clearDupeInputs:function(){return function(e){return Object(l.a)(Object(l.a)({},e),N(e.resources,e.dupes))}}},Ce={setFoodQuantity:function(e,t){return function(a){return Object(l.a)(Object(l.a)({},a),T(a.resources,a.plants,a.food,e,t))}},clearFoodInputs:function(){return function(e){return Object(l.a)(Object(l.a)({},e),B(e.resources,e.plants,e.food))}}},xe={addGeyser:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),A(t.resources,t.geysers,e))}},deleteGeyser:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),V(t.resources,t.geysers,e))}},clearGeyserInputs:function(){return function(e){return Object(l.a)(Object(l.a)({},e),U(e.resources,e.geysers))}}},Ne={sortResources:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),function(e,t,a,n){var r=t===a&&"desc"===n?"asc":"desc";return{resources:v(e,a,r),resourcesOrderBy:a,resourcesOrder:r}}(t.resources,t.resourcesOrderBy,e,t.resourcesOrder))}}},Ie={sortPlants:function(e){return function(t){return Object(l.a)(Object(l.a)({},t),function(e,t,a,n){var r=t===a&&"desc"===n?"asc":"desc";return{plants:v(e,a,r),plantsOrderBy:a,plantsOrder:r}}(t.plants,t.plantsOrderBy,e,t.plantsOrder))}}},ke={setGameMode:function(e){return function(t){return localStorage.setItem("settings",JSON.stringify({gameMode:e})),Object(l.a)(Object(l.a)({},t),{},{settings:Object(l.a)(Object(l.a)({},t.settings),{},{gameMode:e}),dupes:Object(l.a)(Object(l.a)({},t.dupes),{},{caloriesRequired:R(e,t.dupes)})})}}},Se=a(83),qe=a.n(Se),Pe=a(75),We=a.n(Pe),Re={getTheme:function(){return function(e){var t={palette:{type:"dark",primary:qe.a,secondary:We.a,error:We.a,contrastThreshold:3}},a=localStorage.getItem("theme");if(a)try{if(!(t=JSON.parse(a))&&!t.palette&&!t.palette.type)throw new Error("using old settings")}catch(n){localStorage.setItem("theme",JSON.stringify(t))}return Object(l.a)(Object(l.a)({},e),{},{theme:t})}},setTheme:function(e){return function(t){return localStorage.setItem("theme",JSON.stringify(e)),Object(l.a)(Object(l.a)({},t),{},{theme:e})}}},ze={tabIndex:0,settings:{gameMode:"survival"},collapseBuildingPanels:!1,collapseBuildingPanelsTrigger:-1,buildings:[],buildingsLayout:"grid",buildingsOrderBy:"",buildingOrder:"desc",resources:[],resourcesOrderBy:"name",resourcesOrder:"asc",theme:null,powerUsage:{buildings:[],value:0},powerGeneration:{buildings:[],value:0},powerCapacity:{buildings:[],value:0},resourcesCapacity:{buildings:[],value:0},dupes:{inputs:[],outputs:[],traits:[],quantity:0,caloriesRequired:0,waterValue:0,pollutedWaterValue:0,dirtValue:0,pollutedDirtValue:0},food:[],plants:[],plantsOrder:"desc",plantsOrderBy:"name",geysers:{listing:[],inputted:[]}},Te=Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)(Object(l.a)({},de),je),we),Ce),xe),Ne),Ie),ke),Re),Be=r.a.createContext(ze);function De(e){var t=Object(c.useGovernor)(ze,Te),a=Object(o.a)(t,2),n=a[0],i=a[1],u=e.children;return r.a.createElement(Be.Provider,{value:[n,i]},u)}function Me(){return r.a.useContext(Be)}var Fe=a(147),Ge=a(250),Le=a(251),Ae=a(38),Ve=a(17),Ue=a(252),Qe=a(148),Je=a(224),He=Object(Ue.a)((function(e){return{root:{padding:e.spacing(),paddingTop:e.spacing(10),maxWidth:750,margin:"auto",height:"100vh",display:"flex",flexDirection:"column"},actions:{paddingTop:e.spacing(2)},section:{paddingTop:e.spacing(2),paddingBottom:e.spacing(2)},content:{flexGrow:1},footer:{},oniColor:{color:"#FD6B6B"},onicColor:{color:"#00E3E3"},link:{color:e.palette.text.primary}}})),_e=function(){var e=He();return r.a.createElement("div",{className:e.root},r.a.createElement("div",{className:e.content},r.a.createElement(Qe.a,{variant:"h5"},"About O",r.a.createElement("span",{className:e.oniColor},"N"),"I"," ",r.a.createElement("span",{className:e.onicColor},"C"),"alculator"),r.a.createElement("div",{className:e.section},r.a.createElement(Qe.a,null,"ONIC is open source. Contributions are welcome!"),r.a.createElement(Je.a,{variant:"outlined",target:"_blank",href:"https://github.com/david-j-lee/oni-calc"},"GitHub")),r.a.createElement("div",{className:e.section},r.a.createElement(Qe.a,null,"If you want to buy me some coffee."),r.a.createElement(Je.a,{variant:"outlined",target:"_blank",href:"https://paypal.me/davethedev"},"PayPal"))),r.a.createElement("div",{className:e.footer},"ONIC"))},Ye=a(33),Ke=a(234),Xe=a(253),$e=a(244),Ze=a(257),et=a(230),tt=a(231),at=a(232),nt=a(43),rt=a.n(nt),it=Object(n.memo)((function(e){var t=e.value,a=e.suffix,i=e.variant,u=e.color,l=ut(),c=Object(n.useState)(0),s=Object(o.a)(c,2),m=s[0],p=s[1],d=Object(n.useState)(""),g=Object(o.a)(d,2),f=g[0],v=g[1],y=Object(n.useState)(""),b=Object(o.a)(y,2),E=b[0],O=b[1];return Object(n.useEffect)((function(){p(Math.round(100*Math.abs(t))/100),v(0===t?"":t>=0?"+":"-"),O(0===t?"":t>=0?l.positive:l.negative)}),[t,l]),r.a.createElement(Qe.a,{className:l.root,variant:i,color:u},r.a.createElement("span",{className:[E,l.sign].join(" ")},f)," ",m.toLocaleString()," ",a)})),ut=Object(Ue.a)((function(){return{root:{whiteSpace:"nowrap"},sign:{pointerEvents:"none"},positive:{color:"green"},negative:{color:"red"}}})),lt=it,ot=a(225),ct=a(226),st=a(229),mt=a(227),pt=a(228),dt=Object(n.memo)((function(e){var t=e.buildings,a=e.title,n=gt();return r.a.createElement("div",null,t.length<=0?r.a.createElement(Qe.a,{className:n.noBuildings},"No ",a.toLowerCase()," found"):r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Building"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Utilization"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,t.map((function(e,t){var a=Math.round(e.quantity*e.utilization/100*(e.power.generation-e.power.usage)*100)/100,n=e.power.unit;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},e.name),r.a.createElement(pt.a,{align:"right",size:"small"},e.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},e.utilization,"%"),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:a,suffix:" "+n})))})))))})),gt=Object(Ue.a)((function(e){return{noBuildings:{padding:e.spacing()}}})),ft=dt,vt=Object(Ue.a)((function(e){return{power:{display:"flex",alignItems:"center",width:"100%"},powerText:{display:"flex",flexDirection:"column",alignItems:"center",flexGrow:1},popover:{pointerEvents:"none"},value:{cursor:"default",whiteSpace:"nowrap",padding:e.spacing()},accordionDetails:{overflowX:"auto",overflowY:"hidden"}}})),yt=function(){var e=vt(),t=Me(),a=Object(o.a)(t,1)[0],i=a.powerGeneration,u=a.powerUsage,l=Object(n.useState)(null),c=Object(o.a)(l,2),s=c[0],m=c[1],p=Object(n.useState)(""),d=Object(o.a)(p,2),g=d[0],f=d[1],v=Object(n.useState)([]),y=Object(o.a)(v,2),b=y[0],E=y[1],O=function(e,t,a){m(e.target),f(t),E(a)},h=function(){m(null),f(""),E([])},j=!!s;return r.a.createElement(Ze.a,{defaultExpanded:!0},r.a.createElement(et.a,{expandIcon:r.a.createElement(rt.a,null)},r.a.createElement(Qe.a,null,"Power")),r.a.createElement(tt.a,{className:["styled-scrollbar",e.accordionDetails].join(" ")},r.a.createElement(at.a,{className:e.popover,open:j,anchorEl:s,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:h,disableRestoreFocus:!0},r.a.createElement(ft,{title:g,buildings:b})),r.a.createElement("div",{className:e.power},r.a.createElement("div",{className:e.powerText},r.a.createElement("div",{className:e.value,onMouseOut:h,onMouseOver:function(e){return O(e,"Net",u.buildings.concat(i.buildings))}},r.a.createElement(lt,{suffix:" W",value:i.value-u.value})),r.a.createElement(Qe.a,null,"Net")),r.a.createElement("div",{className:e.powerText},r.a.createElement(Qe.a,{className:e.value,onMouseOut:h,onMouseOver:function(e){return O(e,"Usage",u.buildings)}},Math.round(u.value).toLocaleString()," W"),r.a.createElement(Qe.a,null,"Used")),r.a.createElement(Qe.a,null,"/"),r.a.createElement("div",{className:e.powerText},r.a.createElement(Qe.a,{className:e.value,onMouseOut:h,onMouseOver:function(e){return O(e,"Generation",i.buildings)}},Math.round(i.value).toLocaleString()," W"),r.a.createElement(Qe.a,null,"Generated")))))},bt=a(259),Et=Object(n.memo)((function(e){var t=e.resource,a=e.title,n=e.type,i=function(e){return e.dupeInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})}))},u=function(e){return e.dupeOutputs.concat(e.dupeInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})})))},o=function(e,t){switch(t){case"inputs":return i(e);case"outputs":return e.dupeOutputs;case"both":return u(e);default:return[]}}(t,n);return r.a.createElement("div",null,o.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Dupes"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,o.map((function(e,t){var a,n;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},null===(a=e.dupe)||void 0===a?void 0:a.reference),r.a.createElement(pt.a,{align:"right",size:"small"},null===(n=e.dupe)||void 0===n?void 0:n.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:e.valueExtended})))})))))})),Ot=Et,ht=Object(n.memo)((function(e){var t=e.resource,a=e.title,n=e.type,i=function(e){return e.buildingInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})}))},u=function(e){return e.buildingOutputs.concat(e.buildingInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})})))},o=function(e,t){switch(t){case"inputs":return i(e);case"outputs":return e.buildingOutputs;case"both":return u(e);default:return[]}}(t,n);return r.a.createElement("div",null,o.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Buildings"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Utilization"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,o.map((function(e,t){var a,n,i;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},null===(a=e.building)||void 0===a?void 0:a.name),r.a.createElement(pt.a,{align:"right",size:"small"},null===(n=e.building)||void 0===n?void 0:n.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},null===(i=e.building)||void 0===i?void 0:i.utilization,"%"),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:e.valueExtended})))})))))})),jt=ht,wt=Object(n.memo)((function(e){var t=e.resource,a=e.title,n=e.type,i=function(e){return e.foodInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})}))},u=function(e){return e.foodOutputs.concat(e.foodInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})})))},o=function(e,t){switch(t){case"inputs":return i(e);case"outputs":return e.foodOutputs;case"both":return u(e);default:return[]}}(t,n);return r.a.createElement("div",null,o.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Food"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,o.map((function(e,t){var a,n;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},null===(a=e.food)||void 0===a?void 0:a.name),r.a.createElement(pt.a,{align:"right",size:"small"},null===(n=e.food)||void 0===n?void 0:n.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:e.valueExtended})))})))))})),Ct=wt,xt=Object(n.memo)((function(e){var t=e.resource,a=e.title,n=e.type,i=function(e){return e.plantInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})}))},u=function(e){return e.plantOutputs.concat(e.plantInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})})))},o=function(e,t){switch(t){case"inputs":return i(e);case"outputs":return e.plantOutputs;case"both":return u(e);default:return[]}}(t,n);return r.a.createElement("div",null,o.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Plants"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,o.map((function(e,t){var a,n;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},null===(a=e.plant)||void 0===a?void 0:a.name),r.a.createElement(pt.a,{align:"right",size:"small"},null===(n=e.plant)||void 0===n?void 0:n.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:e.valueExtended})))})))))})),Nt=xt,It=Object(n.memo)((function(e){var t=e.resource,a=e.title,n=e.type,i=function(e){return e.geyserInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})}))},u=function(e){return e.geyserOutputs.concat(e.geyserInputs.map((function(e){return Object(l.a)(Object(l.a)({},e),{},{valueExtended:-1*e.valueExtended})})))},o=function(e,t){switch(t){case"inputs":return i(e);case"outputs":return e.geyserOutputs;case"both":return u(e);default:return[]}}(t,n);return r.a.createElement("div",null,o.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Geysers"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,o.map((function(e,t){return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},e.name),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:e.valueExtended})))})))))})),kt=It,St=Object(n.memo)((function(e){var t=e.title,a=e.resource,n=e.type,i=qt(),u=function(e){return e.buildingInputs.length>0||e.dupeInputs.length>0||e.foodInputs.length>0||e.geyserInputs.length>0||e.plantInputs.length>0},l=function(e){return e.buildingOutputs.length>0||e.dupeOutputs.length>0||e.foodOutputs.length>0||e.geyserOutputs.length>0||e.plantOutputs.length>0};return r.a.createElement("div",null,function(e,t){switch(t){case"inputs":return u(e);case"outputs":return l(e);case"both":return u(e)||l(e);default:return!1}}(a,n)?r.a.createElement("div",null,r.a.createElement("div",{className:i.section},r.a.createElement(Ot,{resource:a,type:n})),r.a.createElement("div",{className:i.section},r.a.createElement(jt,{resource:a,type:n})),r.a.createElement("div",{className:i.section},r.a.createElement(Ct,{resource:a,type:n})),r.a.createElement("div",{className:i.section},r.a.createElement(Nt,{resource:a,type:n})),r.a.createElement("div",{className:i.section},r.a.createElement(kt,{resource:a,type:n}))):r.a.createElement(Qe.a,{className:i.noIOs},"No ",t))})),qt=Object(Ue.a)((function(e){return{section:{},noIOs:{padding:e.spacing()}}})),Pt=St,Wt=Object(n.memo)((function(e){var t=e.resource,a=Rt(),i=Object(n.useState)(null),u=Object(o.a)(i,2),l=u[0],c=u[1],s=Object(n.useState)(""),m=Object(o.a)(s,2),p=m[0],d=m[1],g=Object(n.useState)(""),f=Object(o.a)(g,2),v=f[0],y=f[1],b=Object(n.useRef)("/images/resources/".concat(t.name.toLowerCase().split(" ").join("-"),".png")),E=function(e,t,a){c(e.target),d(t),y(a)},O=function(){c(null),d(""),y("")},h=!!l;return r.a.createElement(mt.a,{className:a.tableRow},r.a.createElement(at.a,{className:a.popover,open:h,anchorEl:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:O,disableRestoreFocus:!0},r.a.createElement(Pt,{resource:t,title:p,type:v})),r.a.createElement(pt.a,{className:a.tableCell},r.a.createElement("div",{className:a.resourceName},r.a.createElement("div",{className:a.image,style:{backgroundImage:"url(".concat(b.current,")")}}),t.name,t.unitOfMeasure?" ("+t.unitOfMeasure+")":"")),r.a.createElement(pt.a,{align:"right",className:a.tableCell},r.a.createElement("div",{className:a.io,onMouseOver:function(e){return E(e,"Inputs","inputs")},onMouseOut:O},Math.round(t.totalInput).toLocaleString())),r.a.createElement(pt.a,{align:"right",className:a.tableCell},r.a.createElement("div",{className:a.io,onMouseOver:function(e){return E(e,"Outputs","outputs")},onMouseOut:O},Math.round(t.totalOutput).toLocaleString())),r.a.createElement(pt.a,{align:"right",className:a.tableCell},r.a.createElement("div",{className:a.io,onMouseOver:function(e){return E(e,"Inputs or Outputs","both")},onMouseOut:O},r.a.createElement(lt,{value:Math.round(t.totalIO)}))))})),Rt=Object(Ue.a)((function(e){return{tableRow:{height:"inherit"},tableCell:{padding:e.spacing()},resourceName:{display:"flex",flexWrap:"nowrap",alignItems:"center"},image:{height:15,width:15,backgroundSize:"cover",marginRight:e.spacing(),flexShrink:0},io:{cursor:"default"},popover:{pointerEvents:"none"}}})),zt=Wt,Tt=Object(Ue.a)((function(e){return{tableRow:{height:"inherit"},tableCell:{padding:e.spacing()},accordionDetails:{overflowX:"auto",overflowY:"hidden"}}})),Bt=function(){var e=Tt(),t=Me(),a=Object(o.a)(t,2),n=a[0],i=n.resources,u=n.resourcesOrder,l=n.resourcesOrderBy,c=a[1].sortResources;return r.a.createElement(Ze.a,{defaultExpanded:!0},r.a.createElement(et.a,{expandIcon:r.a.createElement(rt.a,null)},r.a.createElement(Qe.a,null,"Resources")),r.a.createElement(tt.a,{className:["styled-scrollbar",e.accordionDetails].join(" ")},r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,{className:e.tableRow},[{id:"name",label:"Resource",numeric:!1},{id:"totalInput",label:"Input",numeric:!0},{id:"totalOutput",label:"Output",numeric:!0},{id:"totalIO",label:"Net",numeric:!0}].map((function(t){return r.a.createElement(pt.a,{key:t.id,className:e.tableCell,align:t.numeric?"right":"left"},r.a.createElement(bt.a,{active:l===t.id,direction:u,onClick:function(){return e=t.id,void c(e);var e}},t.label))})))),r.a.createElement(st.a,null,function(e){return e.map((function(e,t){return r.a.createElement(zt,{key:t,resource:e})}))}(i)))))},Dt=Object(n.memo)((function(e){var t=e.plant,a=Mt();return r.a.createElement("div",null,t.rawFood&&0===t.rawFood.length&&t.preparedFood&&0===t.preparedFood.length&&r.a.createElement(Qe.a,{className:a.notFound},"No food found"),t.rawFood&&t.rawFood.length>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,null,"Raw Food"),r.a.createElement(pt.a,null,"Quantity"))),r.a.createElement(st.a,null,t.rawFood.map((function(e,t){return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},e.food.name),r.a.createElement(pt.a,{align:"right",size:"small"},e.quantity))})))),(t.preparedFood&&t.preparedFood.length)>0&&r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,null,"Prepared Food"),r.a.createElement(pt.a,null,"Quantity"))),r.a.createElement(st.a,null,t.preparedFood.map((function(e,t){return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},e.food.name),r.a.createElement(pt.a,{align:"right",size:"small"},e.quantity))})))))})),Mt=Object(Ue.a)((function(e){return{notFound:{padding:e.spacing()}}})),Ft=Dt,Gt=a(261),Lt=a(260),At=Object(Ue.a)((function(e){return{chip:{marginRight:e.spacing()},avatar:{height:"75%",width:"75%"}}})),Vt=function(e){var t=e.ios,a=At(),i=Me(),u=Object(o.a)(i,1)[0].settings,l=Object(n.useState)([]),c=Object(o.a)(l,2),s=c[0],m=c[1];return Object(n.useEffect)((function(){m(t.sort((function(e,t){return e.name-t.name})).map((function(e,t){var n=e.rate;e.unit&&(n=e.rate.replace("per ","/").replace("second","s"));var i="/images/resources/".concat(e.name.toLowerCase().split(" ").join("-"),".png");return r.a.createElement(Lt.a,{key:t,className:a.chip,avatar:r.a.createElement(Gt.a,null,r.a.createElement("div",{className:a.avatar,style:{background:"url(".concat(i,") no-repeat center center"),backgroundSize:"contain"}})),label:[e.name,g(u.gameMode,e.value).toLocaleString(),(e.unit||"")+n].join(" ")})})))}),[t,u,a]),r.a.createElement("div",null,0===s.length?r.a.createElement(Qe.a,null,"No resources found"):s)},Ut=Object(n.memo)((function(e){var t=e.plant,a=Qt(),i=Object(n.useRef)("/images/bio/".concat(t.name.toLowerCase().split(" ").join("-"),".png"));return r.a.createElement("div",{className:a.root},r.a.createElement("div",{className:a.heading},r.a.createElement("div",{className:a.image,style:{background:"#3E4357 url(".concat(i.current,") no-repeat center center"),backgroundSize:"contain"}}),r.a.createElement("div",{className:a.headingContent},r.a.createElement(Qe.a,{variant:"h6"},t.name),r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:6},r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Growth Rate"),r.a.createElement("br",null),t.growthRate.value," ",t.growthRate.rate)),r.a.createElement(Ke.a,{item:!0,xs:6},r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Yield"),r.a.createElement("br",null),t.yield))))),r.a.createElement("div",{className:a.content},r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Inputs"),r.a.createElement(Vt,{ios:t.inputs})))})),Qt=Object(Ue.a)((function(e){return{root:{},heading:{display:"flex",flexWrap:"wrap"},headingContent:{paddingTop:e.spacing(3),paddingRight:e.spacing(3),paddingLeft:e.spacing(3),paddingBottom:0,width:340,flexGrow:1},image:{width:120,height:120},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()},content:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3),paddingBottom:e.spacing(3)},avatar:{height:"100%",width:"100%",backgroundSize:"contain"}}})),Jt=Ut,Ht=Object(n.memo)((function(e){var t=e.plant,a=_t(),i=Object(n.useState)(null),u=Object(o.a)(i,2),l=u[0],c=u[1],s=Object(n.useState)(null),m=Object(o.a)(s,2),p=m[0],d=m[1],g=Object(n.useRef)("/images/bio/".concat(t.name.toLowerCase().split(" ").join("-"),".png")),f=function(){c(null)},v=function(){d(null)},y=!!l,b=!!p;return r.a.createElement(mt.a,{className:a.tableRow},r.a.createElement(at.a,{className:a.popover,open:y,anchorEl:l,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:f,disableRestoreFocus:!0},r.a.createElement(Jt,{plant:t})),r.a.createElement(at.a,{className:a.popover,open:b,anchorEl:p,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:v,disableRestoreFocus:!0},r.a.createElement(Ft,{plant:t})),r.a.createElement(pt.a,{className:a.tableCell},r.a.createElement("div",{className:a.plantName,onMouseOver:function(e){c(e.target)},onMouseOut:f},r.a.createElement("div",{className:a.image,style:{background:"url(".concat(g.current,") no-repeat center center"),backgroundSize:"contain"}}),t.name)),r.a.createElement(pt.a,{align:"right",className:a.tableCell},r.a.createElement("div",{className:a.quantity,onMouseOver:function(e){d(e.target)},onMouseOut:v},t.quantity.toLocaleString())))})),_t=Object(Ue.a)((function(e){return{tableRow:{height:"inherit"},tableCell:{padding:e.spacing()},plantName:{display:"flex",flexWrap:"nowrap",alignItems:"center",cursor:"default"},image:{height:20,width:20,backgroundSize:"200%",backgroundPosition:"center",marginRight:e.spacing()},quantity:{cursor:"default"},popover:{pointerEvents:"none"}}})),Yt=Ht,Kt=[{id:"name",label:"Resource",numeric:!1},{id:"quantity",label:"Quantity",numeric:!0}],Xt=Object(Ue.a)((function(e){return{tableRow:{height:"inherit"},tableCell:{padding:e.spacing()}}})),$t=function(){var e=Xt(),t=Me(),a=Object(o.a)(t,2),n=a[0],i=n.plants,u=n.plantsOrderBy,l=n.plantsOrder,c=a[1].sortPlants;return r.a.createElement(Ze.a,{defaultExpanded:!0},r.a.createElement(et.a,{expandIcon:r.a.createElement(rt.a,null)},r.a.createElement(Qe.a,null,"Plants")),r.a.createElement(tt.a,null,r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,{className:e.tableRow},Kt.map((function(t){return r.a.createElement(pt.a,{key:t.id,className:e.tableCell,align:t.numeric?"right":"left"},r.a.createElement(bt.a,{active:u===t.id,direction:l,onClick:function(){return e=t.id,void c(e);var e}},t.label))})))),r.a.createElement(st.a,null,i.map((function(e,t){return r.a.createElement(Yt,{key:t,plant:e})}))))))},Zt=Object(n.memo)((function(e){var t=e.buildings,a=e.title,n=ea();return r.a.createElement("div",null,t.length<=0?r.a.createElement(Qe.a,{className:n.noBuildings},"No ",a.toLowerCase()," found"):r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,r.a.createElement(pt.a,{size:"small"},"Building"),r.a.createElement(pt.a,{align:"right",size:"small"},"Quantity"),r.a.createElement(pt.a,{align:"right",size:"small"},"Total ",a))),r.a.createElement(st.a,null,t.map((function(e,t){var n=Math.round(e.quantity*e.capacity[a.toLowerCase()].value*100)/100,i=e.capacity[a.toLowerCase()].unit;return r.a.createElement(mt.a,{key:t},r.a.createElement(pt.a,{size:"small"},e.name),r.a.createElement(pt.a,{align:"right",size:"small"},e.quantity),r.a.createElement(pt.a,{align:"right",size:"small"},r.a.createElement(lt,{value:n,suffix:" "+i})))})))))})),ea=Object(Ue.a)((function(e){return{noBuildings:{padding:e.spacing()},positive:{color:"green"},negative:{color:"red"}}})),ta=Zt,aa=Object(Ue.a)((function(){return{panelDetails:{display:"flex",flexDirection:"column"},capacity:{display:"flex",alignItems:"center",width:"100%"},capacityText:{display:"flex",flexDirection:"column",alignItems:"center",flexGrow:1},popover:{pointerEvents:"none"},pointer:{cursor:"default"}}})),na=function(){var e=aa(),t=Me(),a=Object(o.a)(t,1)[0],i=a.powerCapacity,u=a.resourcesCapacity,l=Object(n.useState)(null),c=Object(o.a)(l,2),s=c[0],m=c[1],p=Object(n.useState)(""),d=Object(o.a)(p,2),g=d[0],f=d[1],v=Object(n.useState)([]),y=Object(o.a)(v,2),b=y[0],E=y[1],O=function(e,t,a){m(e.target),f(t),E(a)},h=function(){m(null),f(""),E([])},j=!!s;return r.a.createElement(Ze.a,{defaultExpanded:!0},r.a.createElement(et.a,{expandIcon:r.a.createElement(rt.a,null)},r.a.createElement(Qe.a,null,"Capacity")),r.a.createElement(tt.a,{className:e.panelDetails},r.a.createElement(at.a,{className:e.popover,open:j,anchorEl:s,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:h,disableRestoreFocus:!0},r.a.createElement(ta,{title:g,buildings:b})),r.a.createElement("div",{className:e.capacity},r.a.createElement("div",{className:e.capacityText},r.a.createElement(Qe.a,{className:e.pointer,onMouseOut:h,onMouseOver:function(e){return O(e,"Power",i.buildings)}},i.value," kJ"),r.a.createElement(Qe.a,null,"Power")),r.a.createElement("div",{className:e.capacityText},r.a.createElement(Qe.a,{className:e.pointer,onMouseOut:h,onMouseOver:function(e){return O(e,"Resources",u.buildings)}},u.value/1e3," T"),r.a.createElement(Qe.a,null,"Storage")))))},ra=a(235),ia=Object(Ue.a)((function(e){return{DelayedLoader:{height:"100%",width:"100%",display:"flex",alignItems:"center",justifyContent:"center"}}})),ua=function(e){var t=e.children,a=ia(),i=Object(n.useState)(!1),u=Object(o.a)(i,2),l=u[0],c=u[1];return Object(n.useEffect)((function(){setTimeout((function(){return c(!0)}))}),[c]),l?t:r.a.createElement("div",{className:a.DelayedLoader},r.a.createElement(ra.a,null))},la=a(182),oa=a(237),ca=a(238),sa=a(239),ma=a(258),pa=a(236),da=a(262),ga=a(44),fa=a.n(ga),va=a(45),ya=a.n(va),ba=a(56),Ea=a.n(ba),Oa=Object(n.memo)((function(e){var t=e.details,a=ha();return r.a.createElement("div",{className:a.root},r.a.createElement(Qe.a,{variant:"h6"},"Dupe Details"),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Inputs"),r.a.createElement(Vt,{ios:t.inputs}),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Outputs"),r.a.createElement(Vt,{ios:t.outputs}))})),ha=Object(Ue.a)((function(e){return{root:{padding:e.spacing(3),minWidth:400},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()}}})),ja=Oa,wa=Object(Ue.a)((function(e){return{root:{},card:{margin:e.spacing()},cardContent:{flex:"1 0 auto",display:"flex",paddingRight:e.spacing(2)},cardContentTitle:{flexGrow:1},quantity:{flexGrow:1,marginRight:e.spacing()}}})),Ca=function(){var e=wa(),t=Me(),a=Object(o.a)(t,2),i=a[0].dupes,u=a[1].setDupesTotalQuantity,l=Object(n.useState)(i.quantity||0),c=Object(o.a)(l,2),s=c[0],m=c[1],p=Object(n.useState)(!1),d=Object(o.a)(p,2),g=d[0],f=d[1],v=Object(n.useState)(!1),y=Object(o.a)(v,2),b=y[0],E=y[1],O=Object(n.useRef)(null),h=function(){E(!1)};return Object(n.useEffect)((function(){null!==i.quantity&&void 0!==i.quantity&&m(i.quantity)}),[i.quantity]),r.a.createElement(Ke.a,{container:!0,className:e.root},r.a.createElement(Ke.a,{item:!0,xs:12,sm:12,md:6,lg:4,xl:3},r.a.createElement(ma.a,{fullScreen:!1,open:b,onClose:h,"aria-labelledby":"responsive-dialog-title"},r.a.createElement(ja,{details:i}),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{target:"_blank",href:"https://oxygennotincluded.gamepedia.com/duplicant",color:"primary"},"WIKI"),r.a.createElement(Je.a,{variant:"contained",onClick:h,color:"primary",autoFocus:!0},"CLOSE"))),r.a.createElement(oa.a,{className:e.card},r.a.createElement(ca.a,{className:e.cardContent},r.a.createElement(Qe.a,{variant:"h6",className:e.cardContentTitle},"Total Dupes"),r.a.createElement(la.a,{onClick:function(){E(!0)},"aria-label":"More"},r.a.createElement(Ea.a,null))),r.a.createElement(sa.a,null,r.a.createElement(la.a,{color:"secondary","aria-label":"Decrement",onClick:function(){s>0&&(m(s-1),O.current&&clearTimeout(O.current),O.current=setTimeout((function(){u(s-1)}),500))}},r.a.createElement(fa.a,null)),r.a.createElement(da.a,{type:"number",value:s,onChange:function(e){var t=e.target.value;(t=Number(t))<0&&(t=0),m(t),O.current&&clearTimeout(O.current),O.current=setTimeout((function(){u(t)}),500)},className:e.quantity,onFocus:function(){f(!0)},onBlur:function(){f(!1)},InputProps:{disableUnderline:!g,inputProps:{style:{textAlign:"right",fontSize:"1.25rem"},"aria-label":"Dupe Quantity"}}},s),r.a.createElement(la.a,{color:"primary","aria-label":"Increment",onClick:function(){m(s+1),O.current&&clearTimeout(O.current),O.current=setTimeout((function(){u(s+1)}),500)}},r.a.createElement(ya.a,null))))))},xa=Object(n.memo)((function(e){var t=e.trait,a=Na();return r.a.createElement("div",{className:a.root},r.a.createElement(Qe.a,{variant:"h6"},t.name),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Inputs"),r.a.createElement(Vt,{ios:t.inputs}),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Outputs"),r.a.createElement(Vt,{ios:t.outputs}))})),Na=Object(Ue.a)((function(e){return{root:{padding:e.spacing(3),minWidth:400},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()}}})),Ia=xa,ka=Object(Ue.a)((function(e){return{root:{height:"100%"},cardContent:{flex:"1 0 auto",display:"flex",paddingRight:e.spacing(2)},cardContentTitle:{flexGrow:1},quantity:{flexGrow:1,marginRight:e.spacing(),textAlign:"right"}}})),Sa=function(e){var t=e.trait,a=ka(),i=Me(),u=Object(o.a)(i,2),l=u[0].dupes,c=u[1].setDupesTraitQuantity,s=Object(n.useState)(t.quantity||0),m=Object(o.a)(s,2),p=m[0],d=m[1],g=Object(n.useState)(!1),f=Object(o.a)(g,2),v=f[0],y=f[1],b=Object(n.useState)(!1),E=Object(o.a)(b,2),O=E[0],h=E[1],j=Object(n.useRef)(null),w=function(){h(!1)};return Object(n.useEffect)((function(){d(t.quantity)}),[t]),r.a.createElement("div",{className:a.root},r.a.createElement(ma.a,{fullScreen:!1,open:O,onClose:w,"aria-labelledby":"responsive-dialog-title"},r.a.createElement(Ia,{trait:t}),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{target:"_blank",href:"https://oxygennotincluded.gamepedia.com/duplicant",color:"primary"},"WIKI"),r.a.createElement(Je.a,{variant:"contained",onClick:w,color:"primary",autoFocus:!0},"CLOSE"))),r.a.createElement(oa.a,null,r.a.createElement(ca.a,{className:a.cardContent},r.a.createElement(Qe.a,{variant:"subtitle1",className:a.cardContentTitle},t.name),r.a.createElement(la.a,{onClick:function(){h(!0)},"aria-label":"More"},r.a.createElement(Ea.a,null))),r.a.createElement(sa.a,null,r.a.createElement(la.a,{color:"secondary","aria-label":"Decrement",onClick:function(){p>0&&(d(p-1),j.current&&clearTimeout(j.current),j.current=setTimeout((function(){c(t.name,p-1)}),500))}},r.a.createElement(fa.a,null)),r.a.createElement(da.a,{type:"number",value:p,onChange:function(e){var a=e.target.value;(a=Number(a))<0&&(a=0),d(a),j.current&&clearTimeout(j.current),j.current=setTimeout((function(){c(t.name,a)}),500)},className:a.quantity,onFocus:function(){y(!0)},onBlur:function(){y(!1)},InputProps:{disableUnderline:!v,inputProps:{style:{textAlign:"right",fontSize:"1.25rem"},"aria-label":"Dupe Trait Quantity"}}},p),r.a.createElement(la.a,{color:"primary","aria-label":"Increment",onClick:function(){p0&&r.a.createElement(Pa,null),a.quantity>0&&r.a.createElement(Da,null)))},Ga=a(265),La=Object(n.memo)((function(e){var t=e.building,a=Aa(),i=t.category,u=t.categoryImgUrl,l=t.name,c=t.imgUrl,s=t.power,m=t.capacity,p=t.inputs,d=t.outputs,g=Object(n.useState)(0),f=Object(o.a)(g,2),v=f[0],y=f[1],b=Object(n.useState)(null),E=Object(o.a)(b,2),O=E[0],h=E[1];return Object(n.useEffect)((function(){y((s.generation||0)-(s.usage||0)),h("".concat(s.unit||""," (+").concat(s.generation||0,"/-").concat(s.usage||0,")"))}),[s.generation,s.unit,s.usage]),r.a.createElement("div",{className:a.root},r.a.createElement("div",{className:a.heading},r.a.createElement("div",{className:a.imageWrapper},r.a.createElement("div",{className:a.image,style:{background:"url(".concat(c,") no-repeat center center"),backgroundSize:"contain"}})),r.a.createElement("div",{className:a.headingContent},r.a.createElement(Qe.a,{variant:"h4",id:"responsive-dialog-title"},l),r.a.createElement("div",{className:a.category},r.a.createElement("div",{className:a.categoryImage,style:{background:"url(".concat(u,") no-repeat center center"),backgroundSize:"contain"}}),r.a.createElement(Qe.a,{className:a.category},i)))),r.a.createElement("div",{className:a.content},r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Power")),r.a.createElement(lt,{value:v,suffix:O}),void 0!==m.power.unit&&r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Power Capacity"),r.a.createElement("br",null),m.power.value+" "+m.power.unit),void 0!==m.resources.unit&&r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Resource Capacity"),r.a.createElement("br",null),m.resources.value.toLocaleString()+" "+m.resources.unit),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Inputs"),r.a.createElement(Vt,{ios:p}),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Outputs"),r.a.createElement(Vt,{ios:d})))})),Aa=Object(Ue.a)((function(e){return{root:{minWidth:400},imageWrapper:{padding:e.spacing(2),backgroundColor:"#3E4357"},image:{width:160,height:160},heading:{display:"flex",flexWrap:"wrap"},headingContent:{paddingTop:e.spacing(3),paddingRight:e.spacing(3),paddingLeft:e.spacing(3),paddingBottom:0,width:340,flexGrow:1},category:{display:"flex",alignItems:"center",paddingTop:e.spacing(.75)},categoryImage:{width:25,height:25,marginRight:e.spacing()},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()},content:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3),paddingBottom:e.spacing(3)}}})),Va=La,Ua=Object(n.memo)((function(e){var t=e.building,a=Qa(),i=Me(),u=Object(o.a)(i,2)[1],l=u.setBuildingQuantity,c=u.setBuildingUtilization,s=Object(n.useState)(t.quantity||0),m=Object(o.a)(s,2),p=m[0],d=m[1],g=Object(n.useState)(t.utilization||0),f=Object(o.a)(g,2),v=f[0],y=f[1],b=Object(n.useState)(!1),E=Object(o.a)(b,2),O=E[0],h=E[1],j=Object(n.useState)(!1),w=Object(o.a)(j,2),C=w[0],x=w[1],N=Object(n.useState)(null),I=Object(o.a)(N,2),k=I[0],S=I[1],q=Object(n.useRef)(null),P=Object(n.useRef)(null),W=Object(n.useRef)(null);Object(n.useEffect)((function(){d(t.quantity)}),[t.quantity]);var R=function(){S(null)},z=function(){x(!1)},T=!!k;return r.a.createElement("div",{className:a.root,ref:W},r.a.createElement(ma.a,{fullScreen:!1,open:C,onClose:z,"aria-labelledby":"responsive-dialog-title"},r.a.createElement("div",{className:a.dialog},r.a.createElement(Va,{building:t}),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{target:"_blank",href:t.wikiUrl,color:"primary"},"WIKI"),r.a.createElement(Je.a,{variant:"contained",onClick:z,color:"primary",autoFocus:!0},"CLOSE")))),r.a.createElement(at.a,{className:a.popover,open:T,onClose:R,anchorEl:k,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},disableRestoreFocus:!0},r.a.createElement(Va,{building:t})),r.a.createElement(oa.a,{className:a.card},r.a.createElement("div",{className:a.imgWrapper,onMouseOver:function(e){S(e.target)},onMouseOut:R},r.a.createElement("div",{className:a.img,style:{background:"url(".concat(t.imgUrl,") no-repeat center center"),backgroundSize:"contain"},title:t.name})),r.a.createElement("div",{className:a.details},r.a.createElement(ca.a,{className:a.cardContent},r.a.createElement(Qe.a,{variant:"subtitle1",className:a.cardContentTitle},t.name),r.a.createElement("div",null,r.a.createElement(la.a,{onClick:function(){x(!0)},"aria-label":"More"},r.a.createElement(Ea.a,null)))),r.a.createElement(sa.a,{className:a.actions},!t.hasConsistentIO&&p>0&&r.a.createElement("div",{className:a.slider},r.a.createElement(Ga.a,{value:v,onChange:function(e,a){y(a),P.current&&clearTimeout(P.current),P.current=setTimeout((function(){c(t.name,Math.round(a))}),500)}}),r.a.createElement(Qe.a,{className:a.sliderLabel},v.toFixed(0)+"%")),r.a.createElement("div",{className:a.quantity},r.a.createElement(la.a,{color:"secondary","aria-label":"Decrement",onClick:function(){p>0&&(d(p-1),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){l(t.name,p-1)}),500))}},r.a.createElement(fa.a,null)),r.a.createElement(da.a,{type:"number",value:p,onChange:function(e){var a=e.target.value;(a=Number(a))<0&&(a=0),d(a),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){l(t.name,a)}),500)},className:a.quantityInput,onFocus:function(){h(!0)},onBlur:function(){h(!1)},InputProps:{disableUnderline:!O,inputProps:{style:{textAlign:"right",fontSize:"1.25rem"},"aria-label":"Building Quantity"}}},p),r.a.createElement(la.a,{color:"primary","aria-label":"Increment",onClick:function(){d(p+1),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){l(t.name,p+1)}),500)}},r.a.createElement(ya.a,null)))))))})),Qa=Object(Ue.a)((function(e){return{root:{height:"100%"},card:{display:"flex",width:"100%",height:"100%"},cardContent:{display:"flex",paddingRight:e.spacing(2),flexGrow:1},cardContentTitle:{flexGrow:1},details:{display:"flex",flexDirection:"column",width:"100%"},imgWrapper:{backgroundColor:"#3E4357"},img:{width:40,height:"100%",margin:e.spacing(),pointerEvents:"none",backgroundSize:"contain",backgroundColor:"#3E4357",cursor:"default"},actions:{flexDirection:"column"},quantity:{display:"flex",alignItems:"center"},quantityInput:{flexGrow:1,marginRight:e.spacing(),textAlign:"right"},category:{display:"flex",alignItems:"center"},categoryImage:{display:"inline-block",width:15,height:15,backgroundSize:"cover",marginRight:e.spacing()},slider:{width:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:e.spacing(0,2)},sliderLabel:{paddingLeft:e.spacing(2),textAlign:"right",width:75},dialog:{maxWidth:500},popover:{pointerEvents:"none"}}})),Ja=Ua,Ha=Object(n.memo)((function(e){var t=e.group,a=e.collapseBuildingPanels,i=e.collapseBuildingPanelsTrigger,u=_a(),l=Object(n.useState)(!a),c=Object(o.a)(l,2),s=c[0],m=c[1];return Object(n.useEffect)((function(){m(!a)}),[a,i]),r.a.createElement(Ze.a,{expanded:s,className:u.Accordion,onChange:(t.normalizedName,function(e,t){m(!s)})},r.a.createElement(et.a,{expandIcon:r.a.createElement(rt.a,null)},r.a.createElement("div",{className:u.buildingName},r.a.createElement("div",{className:u.image,style:{backgroundImage:"url(".concat(t.image,")")}}),r.a.createElement(Qe.a,null,t.name))),r.a.createElement(tt.a,null,r.a.createElement(Ke.a,{container:!0},t.buildings.map((function(e){return r.a.createElement(Ke.a,{item:!0,key:e.name,className:u.building,sm:12,md:6,lg:4,xl:3},r.a.createElement(Ja,{building:e}))})))))})),_a=Object(Ue.a)((function(e){return{Accordion:{width:"100%",background:"transparent",border:"3px solid ".concat(e.palette.background.paper)},building:Object(Ye.a)({paddingLeft:e.spacing(),paddingRight:e.spacing(),paddingBottom:e.spacing()},e.breakpoints.down("sm"),{width:"100%"}),buildingName:{display:"flex",flexWrap:"nowrap",alignItems:"center"},image:{width:15,height:15,backgroundSize:"cover",marginRight:e.spacing()}}})),Ya=Ha,Ka=Object(Ue.a)((function(e){return{root:{marginTop:e.spacing(),marginBottom:e.spacing(2),padding:e.spacing(0,1)}}})),Xa=function(){var e=Ka(),t=Me(),a=Object(o.a)(t,1)[0],i=a.buildings,u=a.collapseBuildingPanels,l=a.collapseBuildingPanelsTrigger,c=Object(n.useState)(null),s=Object(o.a)(c,2),m=s[0],p=s[1];return Object(n.useEffect)((function(){var e=i.reduce((function(e,t){var a=t.category.toLowerCase().split(" ").join("-");return e[a]?e[a].buildings.push(t):e[a]={name:t.category,normalizedName:a,image:"/images/building-categories/".concat(a,".png"),buildings:[t]},e}),{});p(e)}),[i]),r.a.createElement("div",{className:e.root},m&&Object.values(m).map((function(e){return r.a.createElement(Ya,{key:e.normalizedName,group:e,collapseBuildingPanels:u,collapseBuildingPanelsTrigger:l})})))},$a=a(117),Za=a.n($a),en=Object(n.memo)((function(e){var t=e.building,a=tn(),i=Me(),u=Object(o.a)(i,2)[1],l=u.setBuildingUtilization,c=u.setBuildingQuantity,s=Object(n.useState)(t.quantity),m=Object(o.a)(s,2),p=m[0],d=m[1],g=Object(n.useState)(!1),f=Object(o.a)(g,2),v=f[0],y=f[1],b=Object(n.useState)(t.utilization||0),E=Object(o.a)(b,2),O=E[0],h=E[1],j=Object(n.useState)(!1),w=Object(o.a)(j,2),C=w[0],x=w[1],N=Object(n.useState)(null),I=Object(o.a)(N,2),k=I[0],S=I[1],q=Object(n.useRef)(),P=Object(n.useRef)(),W=function(){S(null)},R=function(){x(!1)},z=!!k;return r.a.createElement(mt.a,null,r.a.createElement(at.a,{className:a.popover,open:z,anchorEl:k,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:W,disableRestoreFocus:!0},r.a.createElement(Va,{building:t})),r.a.createElement(ma.a,{fullScreen:!1,open:C,onClose:R,"aria-labelledby":"responsive-dialog-title"},r.a.createElement("div",null,r.a.createElement(Va,{building:t}),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{target:"_blank",href:t.wikiUrl,color:"primary"},"WIKI"),r.a.createElement(Je.a,{variant:"contained",onClick:R,color:"primary",autoFocus:!0},"CLOSE")))),r.a.createElement(pt.a,{size:"small"},r.a.createElement("div",{className:a.category},r.a.createElement("div",{className:a.categoryImg,style:{background:"url(".concat(t.categoryImgUrl,") no-repeat center center"),backgroundSize:"contain"}}),t.category)),r.a.createElement(pt.a,{size:"small"},r.a.createElement("div",{className:a.building},r.a.createElement("div",{className:a.buildingImg,onMouseOver:function(e){S(e.target)},onMouseOut:W,style:{background:"url(".concat(t.imgUrl,") no-repeat center center"),backgroundSize:"contain"}}),t.name)),r.a.createElement(pt.a,{size:"small"},!t.hasConsistentIO&&t.quantity>0&&r.a.createElement("span",{className:a.slider},r.a.createElement(Ga.a,{value:O,onChange:function(e,a){h(a),P.current&&clearTimeout(P.current),P.current=setTimeout((function(){l(t.name,Math.round(a))}),500)}}),r.a.createElement(Qe.a,{className:a.sliderLabel},O.toFixed(0)+"%"))),r.a.createElement(pt.a,{align:"right",className:a.quantity,size:"small"},r.a.createElement(da.a,{type:"number",value:p,onChange:function(e){var a=e.target.value;(a=Number(a))<0&&(a=0),d(a),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){c(t.name,a)}),500)},className:a.quantity,onFocus:function(){y(!1)},onBlur:function(){y(!1)},InputProps:{disableUnderline:!v,inputProps:{style:{textAlign:"right",maxWidth:"100px",fontSize:"1.25rem"},"aria-label":"Building Quantity"}}},p)),r.a.createElement(pt.a,{size:"small"},r.a.createElement("div",{className:a.actions},r.a.createElement(la.a,{color:"secondary","aria-label":"Decrement",onClick:function(){p>0&&(d(p-1),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){c(t.name,p-1)}),500))}},r.a.createElement(fa.a,null)),r.a.createElement(la.a,{color:"primary","aria-label":"Increment",onClick:function(){d(p+1),q.current&&clearTimeout(q.current),q.current=setTimeout((function(){c(t.name,p+1)}),500)}},r.a.createElement(ya.a,null)),r.a.createElement(la.a,{onClick:function(){x(!0)},"aria-label":"More"},r.a.createElement(Za.a,null)))))})),tn=Object(Ue.a)((function(e){return{image:{width:40,height:40,backgroundSize:"cover",marginRight:e.spacing()},categoryImg:{width:25,height:25,marginRight:e.spacing(),cursor:"default"},category:{display:"flex",flexWrap:"nowrap",alignItems:"center",fontSize:"9pt"},buildingImg:{width:30,height:30,marginRight:e.spacing(),cursor:"default"},building:{display:"flex",flexWrap:"nowrap",alignItems:"center",fontSize:"12pt"},quantity:{fontSize:"12pt"},actions:{whiteSpace:"nowrap"},slider:{width:150,display:"flex",alignItems:"center",justifyContent:"center",whiteSpace:"nowrap"},sliderLabel:{paddingLeft:e.spacing(2),textAlign:"right",width:75},popover:{pointerEvents:"none"}}})),an=en,nn=[{id:"category",label:"Category",numeric:!1},{id:"name",label:"Building",numeric:!1},{id:"utilization",label:"Utilization",numeric:!0},{id:"quantity",label:"Quantity",numeric:!0},{id:"actions",label:"Actions",numeric:!1}],rn=function(){var e=Me(),t=Object(o.a)(e,2),a=t[0],n=a.buildings,i=a.buildingsOrderBy,u=t[1].sortBuildings;return r.a.createElement(ot.a,null,r.a.createElement(ct.a,null,r.a.createElement(mt.a,null,nn.map((function(e){return r.a.createElement(pt.a,{key:e.id,align:e.numeric?"right":"left"},r.a.createElement(bt.a,{active:i===e.id,onClick:function(){return t=e.id,void u(t);var t}},e.label))})))),r.a.createElement(st.a,null,n.map((function(e){return r.a.createElement(an,{key:e.name,building:e})}))))},un=function(){var e=Me(),t=Object(o.a)(e,1)[0].buildingsLayout;return r.a.createElement(ua,null,"grid"===t&&r.a.createElement(Xa,null),"table"===t&&r.a.createElement(rn,null))},ln=Object(Ue.a)((function(e){return{root:{},title:{paddingBottom:e.spacing()},card:{margin:e.spacing()},surplus:{color:"green"},deficit:{color:"red"}}})),on=function(){var e=ln(),t=Me(),a=Object(o.a)(t,1)[0],i=a.dupes,u=a.food,l=Object(n.useState)(0),c=Object(o.a)(l,2),s=c[0],m=c[1],p=Object(n.useState)(""),d=Object(o.a)(p,2),g=d[0],f=d[1];return Object(n.useEffect)((function(){u.length>0&&m(u.map((function(e){return e.calories*e.quantity})).reduce((function(e,t){return e+t})))}),[u]),Object(n.useEffect)((function(){f(0!==s&&i.caloriesRequired?s>=i.caloriesRequired?e.surplus:e.deficit:"")}),[s,i,e]),r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:12,sm:12,md:6,lg:4,xl:3},r.a.createElement(oa.a,{className:e.card},r.a.createElement(ca.a,null,r.a.createElement(Qe.a,{variant:"h6",className:e.title},i.quantity," Dupes"),r.a.createElement(Qe.a,null,r.a.createElement("span",{className:g},s)," of"," ",i.caloriesRequired||0," kcal/cycle")))))},cn=a(243),sn=Object(n.memo)((function(e){var t=e.item,a=mn(),i=Object(n.useRef)("/images/resources/".concat(t.name.toLowerCase().split(" ").join("-"),".png"));return r.a.createElement("div",{className:a.root},r.a.createElement("div",{className:a.heading},r.a.createElement("div",{className:a.image,style:{background:"#3E4357 url(".concat(i.current,") no-repeat center center"),backgroundSize:"contain"}}),r.a.createElement("div",{className:a.headingContent},r.a.createElement(Qe.a,{variant:"h6"},t.name),r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:6},r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Calories"),r.a.createElement("br",null),t.calories)),r.a.createElement(Ke.a,{item:!0,xs:6},r.a.createElement(Qe.a,{variant:"body1",className:a.title},r.a.createElement("small",null,"Quality"),r.a.createElement("br",null),t.quality))))),r.a.createElement("div",{className:a.content},r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Requirements"),0===t.requirements.length?r.a.createElement(Qe.a,null,"No requirements found"):t.requirements.map((function(e,t){var n="/images/bio/".concat(e.name.toLowerCase().split(" ").join("-"),".png");return r.a.createElement(Lt.a,{key:t,label:e.name,avatar:r.a.createElement(Gt.a,null,r.a.createElement("div",{className:a.avatar,style:{backgroundImage:"url(".concat(n,")")}}))})})),r.a.createElement(Qe.a,{variant:"subtitle1",className:a.title},"Inputs"),r.a.createElement(Vt,{ios:t.inputs})))})),mn=Object(Ue.a)((function(e){return{root:{minWidth:400},image:{width:160,height:160},heading:{display:"flex",flexWrap:"wrap"},headingContent:{paddingTop:e.spacing(3),paddingRight:e.spacing(3),paddingLeft:e.spacing(3),paddingBottom:0,width:340,flexGrow:1},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()},content:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3),paddingBottom:e.spacing(3)},avatar:{height:"100%",width:"100%",backgroundSize:"contain"}}})),pn=sn,dn=Object(n.memo)((function(e){var t=e.item,a=gn(),i=Me(),u=Object(o.a)(i,2)[1].setFoodQuantity,l=Object(n.useState)(t.quantity),c=Object(o.a)(l,2),s=c[0],m=c[1],p=Object(n.useState)(!1),d=Object(o.a)(p,2),g=d[0],f=d[1],v=Object(n.useState)(!1),y=Object(o.a)(v,2),b=y[0],E=y[1],O=Object(n.useState)(null),h=Object(o.a)(O,2),j=h[0],w=h[1],C=Object(n.useRef)(),x=Object(n.useRef)("https://oxygennotincluded.gamepedia.com/".concat(t.name.toLowerCase().split(" ").join("-"))),N=Object(n.useRef)("/images/resources/".concat(t.name.toLowerCase().split(" ").join("-"),".png"));Object(n.useEffect)((function(){m(t.quantity)}),[t.quantity]);var I=function(){w(null)},k=function(){E(!1)},S=!!j;return r.a.createElement("div",{className:a.root},r.a.createElement(ma.a,{fullScreen:!1,open:b,onClose:k,"aria-labelledby":"responsive-dialog-title"},r.a.createElement(pn,{item:t}),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{target:"_blank",href:x.current,color:"primary"},"WIKI"),r.a.createElement(Je.a,{variant:"contained",onClick:k,color:"primary",autoFocus:!0},"CLOSE"))),r.a.createElement(at.a,{className:a.popover,open:S,anchorEl:j,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:I,disableRestoreFocus:!0},r.a.createElement(pn,{item:t})),r.a.createElement(oa.a,{className:a.card},r.a.createElement(cn.a,{className:a.cover,image:N.current,title:t.name,onMouseOver:function(e){w(e.target)},onMouseOut:I}),r.a.createElement("div",{className:a.details},r.a.createElement(ca.a,{className:a.cardContent},r.a.createElement(Qe.a,{variant:"subtitle1",className:a.cardContentTitle},t.name),r.a.createElement(la.a,{onClick:function(){E(!0)},"aria-label":"More"},r.a.createElement(Ea.a,null))),r.a.createElement(sa.a,null,r.a.createElement(la.a,{color:"secondary","aria-label":"Decrement",onClick:function(){s>0&&(m(s-1),C.current&&clearTimeout(C.current),C.current=setTimeout((function(){u(t.name,s-1)}),500))}},r.a.createElement(fa.a,null)),r.a.createElement(da.a,{type:"number",value:s,onChange:function(e){var a=e.target.value;(a=Number(a))<0&&(a=0),m(a),C.current&&clearTimeout(C.current),C.current=setTimeout((function(){u(t.name,a)}),500)},className:a.quantity,onFocus:function(){f(!0)},onBlur:function(){f(!1)},InputProps:{disableUnderline:!g,inputProps:{style:{textAlign:"right",fontSize:"1.25rem"}},"aria-label":"Food Quantity"}},s),r.a.createElement(la.a,{color:"primary","aria-label":"Increment",onClick:function(){m(s+1),C.current&&clearTimeout(C.current),C.current=setTimeout((function(){u(t.name,s+1)}),500)}},r.a.createElement(ya.a,null))))))})),gn=Object(Ue.a)((function(e){return{root:{height:"100%"},card:{display:"flex",width:"100%",height:"100%"},cardContent:{flex:"1 0 auto",display:"flex",paddingRight:e.spacing(2)},cardContentTitle:{flexGrow:1},details:{display:"flex",flexDirection:"column",width:"100%"},cover:{width:60,backgroundSize:"contain",backgroundColor:"#3E4357",cursor:"default"},quantity:{flexGrow:1,marginRight:e.spacing(),textAlign:"right"},dialog:{maxWidth:500},popover:{pointerEvents:"none"}}})),fn=dn,vn=Object(Ue.a)((function(e){return{root:{},title:{padding:e.spacing(),paddingTop:e.spacing(2)},item:Object(Ye.a)({paddingLeft:e.spacing(),paddingRight:e.spacing(),paddingBottom:e.spacing()},e.breakpoints.down("sm"),{width:"100%"})}})),yn=function(){var e=vn(),t=Me(),a=Object(o.a)(t,1)[0].food;return r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(Qe.a,{className:e.title},"Raw Food")),a.filter((function(e){return e.isRaw&&e.calories>0})).map((function(t,a){return r.a.createElement(Ke.a,{key:a,item:!0,xs:12,sm:12,md:6,lg:4,xl:3,className:e.item},r.a.createElement(fn,{item:t}))})),r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(Qe.a,{className:e.title},"Prepared Food")),a.filter((function(e){return!e.isRaw&&e.calories>0})).map((function(t,a){return r.a.createElement(Ke.a,{key:a,item:!0,xs:12,sm:12,md:6,lg:4,xl:3,className:e.item},r.a.createElement(fn,{item:t}))})))},bn=Object(n.memo)((function(){var e=En();return r.a.createElement(ua,null,r.a.createElement("div",{className:e.root},r.a.createElement(on,null),r.a.createElement(yn,null)))})),En=Object(Ue.a)((function(e){return{root:{paddingTop:e.spacing(),paddingBottom:e.spacing()}}})),On=bn,hn=a(242),jn=a(263),wn=a(254),Cn=a(264),xn={PaperProps:{style:{maxHeight:224,width:250,transform:"translate3d(0, 0, 0)"}}},Nn=Object(Ue.a)((function(e){return{root:{},card:{margin:e.spacing()},cardContent:{flex:"1 0 auto",display:"flex"},cardActions:{justifyContent:"flex-end"},avatar:{height:"75%",width:"75%",backgroundSize:"contain"},geyserSelect:{minWidth:250},geyserInfo:{paddingTop:e.spacing(),paddingBottom:e.spacing()},title:{paddingTop:e.spacing(2),paddingBottom:e.spacing()},textField:{paddingRight:e.spacing()}}})),In=function(){var e=Nn(),t=Me(),a=Object(o.a)(t,2),i=a[0].geysers,u=a[1].addGeyser,c=Object(n.useState)(""),s=Object(o.a)(c,2),m=s[0],p=s[1],d=Object(n.useState)({name:"",amount:0,activeDuration:0,activeEvery:0,eruptionDuration:0,eruptionEvery:0}),g=Object(o.a)(d,2),f=g[0],v=g[1],y=Object(n.useState)(!1),b=Object(o.a)(y,2),E=b[0],O=b[1],h=function(e,t){var a=Object(l.a)(Object(l.a)({},f),{},Object(Ye.a)({},t,e.target.value));v(a),a.amount&&a.eruptionDuration&&a.eruptionEvery&&a.activeDuration&&a.activeEvery?O(!0):O(!1)};return r.a.createElement(oa.a,{className:e.card},r.a.createElement(ca.a,{className:e.cardContent},r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:12,md:6},r.a.createElement(hn.a,{className:e.geyserSelect},r.a.createElement(jn.a,{htmlFor:"geyser"},"Select a Geyser"),r.a.createElement(wn.a,{displayEmpty:!0,MenuProps:xn,value:m,onChange:function(e){if(i&&i.listing){var t=i.listing.find((function(t){return t.name===e.target.value}));t&&(v(Object(l.a)(Object(l.a)({},t),{},{amount:0,eruptionDuration:0,eruptionEvery:0,activeDuration:0,activeEvery:0})),p(e.target.value))}},inputProps:{name:"geyserName",id:"geyserName"}},i.listing.map((function(e,t){return r.a.createElement(Cn.a,{key:t,value:e.name},e.name)})))),""!==m&&r.a.createElement(Ke.a,{container:!0,className:e.geyserInfo},r.a.createElement(Ke.a,{item:!0,xs:12,md:6},r.a.createElement(Qe.a,{className:e.title},r.a.createElement("small",null,"Temperature"),r.a.createElement("br",null),f.temp.value," ",f.temp.unit),r.a.createElement(Qe.a,{className:e.title},r.a.createElement("small",null,"Max Pressure"),r.a.createElement("br",null),f.maxPressure.value," ",f.maxPressure.unit)),r.a.createElement(Ke.a,{item:!0,xs:12,md:6},r.a.createElement(Qe.a,{className:e.title},r.a.createElement("small",null,"Outputs")),f.outputs.map((function(t,a){var n="/images/resources/"+t.name.toLowerCase().split(" ").join("-")+".png";return r.a.createElement(Lt.a,{key:a,avatar:r.a.createElement(Gt.a,null,r.a.createElement("div",{className:e.avatar,style:{backgroundImage:"url(".concat(n,")")}})),label:t.name})}))))),""!==m&&r.a.createElement(Ke.a,{item:!0,xs:12,md:6},r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(da.a,{value:f.amount,className:e.textField,margin:"dense",onChange:function(e){return h(e,"amount")},label:"Amount per eruption",helperText:"g/s",type:"number",inputProps:{style:{textAlign:"right"},"aria-label":"Geyser Amount Per Eruption"}})),r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(da.a,{value:f.eruptionDuration,className:e.textField,margin:"dense",onChange:function(e){return h(e,"eruptionDuration")},label:"Eruption duration",helperText:"seconds",type:"number",inputProps:{style:{textAlign:"right"},"aria-label":"Geyser Eruption Duration"}}),r.a.createElement(da.a,{value:f.eruptionEvery,className:e.textField,margin:"dense",onChange:function(e){return h(e,"eruptionEvery")},label:"Eruption every",helperText:"seconds",type:"number",inputProps:{style:{textAlign:"right"},"aria-label":"Geyser Eruption Every"}})),r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(da.a,{value:f.activeDuration,className:e.textField,margin:"dense",onChange:function(e){return h(e,"activeDuration")},label:"Active duration",helperText:"cycles",type:"number",inputProps:{style:{textAlign:"right"},"aria-label":"Geyser Active Duration"}}),r.a.createElement(da.a,{value:f.activeEvery,className:e.textField,margin:"dense",onChange:function(e){return h(e,"activeEvery")},label:"Active every",helperText:"cycles",type:"number",inputProps:{style:{textAlign:"right"},"aria-label":"Geyser Active Every"}})))))),""!==m&&r.a.createElement(sa.a,{className:e.cardActions},r.a.createElement(Je.a,{onClick:function(){v(Object(l.a)(Object(l.a)({},f),{},{amount:0,eruptionDuration:0,eruptionEvery:0,activeDuration:0,activeEvery:0})),O(!1)},color:"primary"},"Clear"),E&&r.a.createElement(Je.a,{variant:"contained",color:"primary",onClick:function(){u(Object(l.a)(Object(l.a)({},f),{},{amount:Number(f.amount),eruptionDuration:Number(f.eruptionDuration),eruptionEvery:Number(f.eruptionEvery),activeDuration:Number(f.activeDuration),activeEvery:Number(f.activeEvery)}))}},"Add")))},kn=Object(n.memo)((function(e){var t=e.geyser,a=Sn(),n=Me(),i=Object(o.a)(n,2)[1].deleteGeyser;return r.a.createElement("div",{className:a.root},r.a.createElement(oa.a,null,r.a.createElement(ca.a,null,r.a.createElement(Qe.a,{variant:"subtitle1"},t.name),t.outputs.length>0&&t.outputs.map((function(e,n){var i="/images/resources/".concat(e.name.toLowerCase().split(" ").join("-"),".png");return r.a.createElement(Lt.a,{key:n,className:a.chip,label:[e.name,t.amount].join(" ")+" g/s",avatar:r.a.createElement(Gt.a,null,r.a.createElement("div",{className:a.avatar,style:{background:"url(".concat(i,") no-repeat center center"),backgroundSize:"contain"}}))})})),r.a.createElement(Qe.a,null,"Eruption for ",t.eruptionDuration," seconds every"," ",t.eruptionEvery," seconds"),r.a.createElement(Qe.a,null,"Active for ",t.activeDuration," cycles every ",t.activeEvery," ","cycles")),r.a.createElement(sa.a,{className:a.cardActions},r.a.createElement(Je.a,{color:"primary",onClick:function(){i(t)}},"DELETE"))))})),Sn=Object(Ue.a)((function(e){return{root:{height:"100%"},cardActions:{justifyContent:"flex-end"},chip:{marginTop:e.spacing(),marginBottom:e.spacing()},avatar:{height:"75%",width:"75%"}}})),qn=kn,Pn=Object(Ue.a)((function(e){return{root:{paddingTop:e.spacing(),paddingBottom:e.spacing()},geyser:{padding:e.spacing()}}})),Wn=function(){var e=Pn(),t=Me(),a=Object(o.a)(t,1)[0].geysers;return r.a.createElement(ua,null,r.a.createElement("div",{className:e.root},r.a.createElement(Ke.a,{container:!0},r.a.createElement(Ke.a,{item:!0,xs:12},r.a.createElement(In,null)),a.inputted.map((function(t,a){return r.a.createElement(Ke.a,{key:a,item:!0,xs:12,lg:6,className:e.geyser},r.a.createElement(qn,{geyser:t}))})))))},Rn=a(97),zn=a(255),Tn=Object(Ue.a)((function(e){return{root:{padding:e.spacing()},card:{height:"100%"},button:{height:"100%",width:"100%",justifyContent:"flex-start",display:"flex",flexDirection:"column",alignItems:"flex-start"},title:{display:"flex",alignItems:"center"}}})),Bn=function(){var e=Tn(),t=Me(),a=Object(o.a)(t,2),i=a[0],u=i.settings,l=i.dupes,c=a[1].setGameMode,s=Object(n.useMemo)((function(){if(l.inputs){var e=l.inputs.find((function(e){return"Food"===e.name}));if(e)return e.value}return null}),[l.inputs]),m=function(e){c(e)};return r.a.createElement(ua,null,r.a.createElement("div",{className:e.root},r.a.createElement(Ke.a,{container:!0,spacing:1},r.a.createElement(Ke.a,{item:!0,sm:6,xs:12},r.a.createElement(oa.a,{className:e.card},r.a.createElement(Rn.a,{className:e.button,onClick:function(){return m("survival")}},r.a.createElement(ca.a,null,r.a.createElement(Qe.a,{variant:"h6",className:e.title}," ",r.a.createElement(zn.a,{checked:"survival"===u.gameMode,onChange:function(){return m("survival")},value:"survival",inputProps:{"aria-label":"game mode survival"}}),r.a.createElement("span",null,"Survival")),r.a.createElement("ul",null,r.a.createElement("li",null,s?s.survival:""," calories per dupe every cycle")))))),r.a.createElement(Ke.a,{item:!0,sm:6,xs:12},r.a.createElement(oa.a,{className:e.card},r.a.createElement(Rn.a,{className:e.button,onClick:function(){return m("no-sweat")}},r.a.createElement(ca.a,null,r.a.createElement(Qe.a,{variant:"h6",className:e.title},r.a.createElement(zn.a,{checked:"no-sweat"===u.gameMode,onChange:function(){return m("no-sweat")},value:"no-sweat",inputProps:{"aria-label":"game mode no sweat"}}),r.a.createElement("span",null,"No Sweat")),r.a.createElement("ul",null,r.a.createElement("li",null,s?s.noSweat:""," calories per dupe every cycle")))))))))},Dn=Object(n.memo)((function(e){var t=e.location,a=Mn(),i=Me(),u=Object(o.a)(i,2)[1].getData,l=Object(n.useState)("/settings"===t.pathname?0:"/dupes"===t.pathname?1:"/buildings"===t.pathname?2:"/food"===t.pathname?3:"/geysers"===t.pathname?4:0),c=Object(o.a)(l,2),s=c[0],m=c[1];Object(n.useEffect)((function(){u()}),[u]);return r.a.createElement(Ke.a,{container:!0,className:[a.root,"styled-scrollbar"].join(" ")},r.a.createElement(Ke.a,{item:!0,sm:6,md:5,lg:4,className:["styled-scrollbar",a.leftSection].join(" ")},r.a.createElement(yt,null),r.a.createElement(Bt,null),r.a.createElement($t,null),r.a.createElement(na,null)),r.a.createElement(Ke.a,{item:!0,sm:6,md:7,lg:8,className:a.rightSection},r.a.createElement(Xe.a,{className:a.tabs,value:s,onChange:function(e,t){m(t)},indicatorColor:"primary",textColor:"primary",variant:"scrollable"},r.a.createElement($e.a,{label:"Settings",component:Ae.b,to:"/settings"}),r.a.createElement($e.a,{label:"Dupes",component:Ae.b,to:"/dupes"}),r.a.createElement($e.a,{label:"Buildings",component:Ae.b,to:"/buildings"}),r.a.createElement($e.a,{label:"Food",component:Ae.b,to:"/food"}),r.a.createElement($e.a,{label:"Geysers",component:Ae.b,to:"/geysers"})),r.a.createElement("div",{className:["styled-scrollbar",a.content].join(" ")},r.a.createElement(Ve.c,null,r.a.createElement(Ve.a,{path:"/geysers"},r.a.createElement(Wn,null)),r.a.createElement(Ve.a,{path:"/food"},r.a.createElement(On,null)),r.a.createElement(Ve.a,{path:"/buildings"},r.a.createElement(un,null)),r.a.createElement(Ve.a,{path:"/dupes"},r.a.createElement(Fa,null)),r.a.createElement(Ve.a,{path:"/"},r.a.createElement(Bn,null))))))})),Mn=Object(Ue.a)((function(e){return{root:Object(Ye.a)({height:"100vh",display:"flex"},e.breakpoints.down("xs"),{height:"calc(100vh - ".concat(e.spacing(8),"px)"),display:"block",overflowY:"auto",marginTop:e.spacing(8)}),leftSection:Object(Ye.a)({height:"calc(100% - ".concat(e.spacing(10),"px)"),flexGrow:1,overflowY:"auto",marginTop:e.spacing(10),paddingLeft:e.spacing(),paddingRight:e.spacing(),paddingBottom:e.spacing(2)},e.breakpoints.down("xs"),{height:"auto",marginTop:0}),rightSection:Object(Ye.a)({height:"calc(100% - ".concat(e.spacing(10),"px)"),display:"flex",flexDirection:"column",flexGrow:1,paddingLeft:0,paddingRight:0,marginTop:e.spacing(10)},e.breakpoints.down("xs"),{height:"auto",marginTop:e.spacing()}),tabs:{paddingLeft:e.spacing(2),paddingRight:e.spacing(2)},content:{padding:e.spacing(1,1,0,1),height:"100%",overflowY:"auto"}}})),Fn=Dn,Gn=a(248),Ln=a(249),An=a(256),Vn=a(144),Un=a.n(Vn),Qn=a(145),Jn=a.n(Qn),Hn=a(245),_n=a(246),Yn=a(57),Kn=a.n(Yn),Xn=function(){var e=Me(),t=Object(o.a)(e,2)[1].clearDupeInputs,a=Object(n.useState)(!1),i=Object(o.a)(a,2),u=i[0],l=i[1],c=function(){l(!1)};return r.a.createElement("div",null,r.a.createElement(ma.a,{open:u,onClose:c},r.a.createElement(Hn.a,null,r.a.createElement(_n.a,null,"Are you sure you want to delete all of your dupe inputs?")),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{onClick:c,color:"primary"},"Cancel"),r.a.createElement(Je.a,{variant:"contained",onClick:function(){t(),l(!1)},color:"primary",autoFocus:!0},"Confirm"))),r.a.createElement(An.a,{title:"Clear all dupe inputs"},r.a.createElement(la.a,{onClick:function(){l(!0)},color:"inherit","aria-label":"Clear All Dupes"},r.a.createElement(Kn.a,null))))},$n=a(122),Zn=a.n($n),er=a(123),tr=a.n(er),ar=a(121),nr=a.n(ar),rr=a(120),ir=a.n(rr),ur=function(){var e=Me(),t=Object(o.a)(e,2),a=t[0].buildingsLayout,i=t[1],u=i.clearBuildingInputs,l=i.setBuildingsLayout,c=i.collapseBuildingPanels,s=i.expandBuildingPanels,m=Object(n.useState)(!1),p=Object(o.a)(m,2),d=p[0],g=p[1],f=function(){g(!1)},v="Set to "+("grid"===a?"table":"grid")+" layout";return r.a.createElement("div",null,r.a.createElement(ma.a,{open:d,onClose:f},r.a.createElement(Hn.a,null,r.a.createElement(_n.a,null,"Are you sure you want to delete all of your building inputs?")),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{onClick:f,color:"primary"},"Cancel"),r.a.createElement(Je.a,{variant:"contained",onClick:function(){u(),g(!1)},color:"primary",autoFocus:!0},"Confirm"))),r.a.createElement(An.a,{title:"Clear all building inputs"},r.a.createElement(la.a,{onClick:function(){g(!0)},color:"inherit","aria-label":"Clear"},r.a.createElement(Kn.a,null))),"grid"===a&&r.a.createElement(An.a,{title:"Expand all panels"},r.a.createElement(la.a,{onClick:s,color:"inherit","aria-label":"Expand All"},r.a.createElement(ir.a,null))),"grid"===a&&r.a.createElement(An.a,{title:"Collapse all panels"},r.a.createElement(la.a,{onClick:c,color:"inherit","aria-label":"Collapse All"},r.a.createElement(nr.a,null))),r.a.createElement(An.a,{title:v},r.a.createElement(la.a,{onClick:l,color:"inherit","aria-label":"Change Layout"},"grid"===a&&r.a.createElement(Zn.a,null),"table"===a&&r.a.createElement(tr.a,null))))},lr=function(){var e=Me(),t=Object(o.a)(e,2)[1].clearFoodInputs,a=Object(n.useState)(!1),i=Object(o.a)(a,2),u=i[0],l=i[1],c=function(){l(!1)};return r.a.createElement("div",null,r.a.createElement(ma.a,{open:u,onClose:c},r.a.createElement(Hn.a,null,r.a.createElement(_n.a,null,"Are you sure you want to delete all of your food inputs?")),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{onClick:c,color:"primary"},"Cancel"),r.a.createElement(Je.a,{variant:"contained",onClick:function(){t(),l(!1)},color:"primary",autoFocus:!0},"Confirm"))),r.a.createElement(An.a,{title:"Clear all food inputs"},r.a.createElement(la.a,{onClick:function(){l(!0)},color:"inherit","aria-label":"Clear All Food"},r.a.createElement(Kn.a,null))))},or=function(){var e=Me(),t=Object(o.a)(e,2)[1].clearGeyserInputs,a=Object(n.useState)(!1),i=Object(o.a)(a,2),u=i[0],l=i[1],c=function(){l(!1)};return r.a.createElement("div",null,r.a.createElement(ma.a,{open:u,onClose:c},r.a.createElement(Hn.a,null,r.a.createElement(_n.a,null,"Are you sure you want to delete all of your geyser inputs?")),r.a.createElement(pa.a,null,r.a.createElement(Je.a,{onClick:c,color:"primary"},"Cancel"),r.a.createElement(Je.a,{variant:"contained",onClick:function(){t(),l(!1)},color:"primary",autoFocus:!0},"Confirm"))),r.a.createElement(An.a,{title:"Clear all geyser inputs"},r.a.createElement(la.a,{onClick:function(){l(!0)},color:"inherit","aria-label":"Clear All Geysers"},r.a.createElement(Kn.a,null))))},cr=a(247),sr=a(143),mr=a.n(sr),pr=a(142),dr=a.n(pr),gr=a(106),fr=a.n(gr),vr=a(141),yr=a.n(vr),br=a(124),Er=a.n(br),Or=a(125),hr=a.n(Or),jr=a(126),wr=a.n(jr),Cr=a(127),xr=a.n(Cr),Nr=a(128),Ir=a.n(Nr),kr=a(129),Sr=a.n(kr),qr=a(130),Pr=a.n(qr),Wr=a(131),Rr=a.n(Wr),zr=a(132),Tr=a.n(zr),Br=a(133),Dr=a.n(Br),Mr=a(134),Fr=a.n(Mr),Gr=a(135),Lr=a.n(Gr),Ar=a(136),Vr=a.n(Ar),Ur=a(137),Qr=a.n(Ur),Jr=a(138),Hr=a.n(Jr),_r=a(139),Yr=a.n(_r),Kr=a(140),Xr=a.n(Kr),$r=[We.a,Er.a,hr.a,wr.a,qe.a,xr.a,Ir.a,Sr.a,Pr.a,Rr.a,Tr.a,Dr.a,Fr.a,Lr.a,Vr.a,Qr.a,Hr.a,Yr.a,Xr.a],Zr=Object(Ue.a)((function(e){return{dialogTitle:{},dialogContent:{maxWidth:168,margin:e.spacing(0,4)},colorPreviews:{display:"flex",flexWrap:"wrap"},colorPreview:{padding:1},colorPreviewButton:{height:40,width:40,transition:"all 300ms ease","&:hover":{borderRadius:"100%"}},selectedColors:{paddingTop:e.spacing(2),display:"flex",flexWrap:"nowrap"},selectedColor:{width:40},selector:{display:"flex",flexWrap:"nowrap",alignItems:"center",margin:e.spacing(2,0)},colorPreviewSelector:{marginRight:e.spacing(1)},colorPreviewSelectorIcon:{height:40,width:40},title:{cursor:"pointer",width:"100%"},active:{position:"absolute",top:0,bottom:0,left:0,right:0,transition:"all 300ms ease",display:"flex",justifyContent:"center",alignItems:"center"},grow:{flexGrow:1}}})),ei=function(){var e=Zr(),t=Me(),a=Object(o.a)(t,2),i=a[0].theme,u=a[1].setTheme,c=Object(n.useState)(!1),s=Object(o.a)(c,2),m=s[0],p=s[1],d=Object(n.useState)("primary"),g=Object(o.a)(d,2),f=g[0],v=g[1],y=Object(n.useState)(i&&i.palette.primary),b=Object(o.a)(y,2),E=b[0],O=b[1],h=Object(n.useState)(i&&i.palette.secondary),j=Object(o.a)(h,2),w=j[0],C=j[1],x=function(){var e=Object(l.a)({},i),t="light"===e.palette.type?"dark":"light";e.palette.type=t,u(e)},N=function(e,t){var a=Object(l.a)({},i);a.palette.primary=e,a.palette.secondary=t,u(a)},I=function(){p(!1)};return Object(n.useEffect)((function(){i&&i.palette&&(i.palette.primary&&O(i.palette.primary),i.palette.secondary&&C(i.palette.secondary))}),[i]),r.a.createElement("div",null,r.a.createElement(An.a,{title:"Change theme"},r.a.createElement(la.a,{onClick:function(){p(!0)},color:"inherit","aria-label":"Change Theme"},r.a.createElement(yr.a,null))),r.a.createElement(ma.a,{fullScreen:!1,open:m,onClose:I,classes:{paper:"colors-dialog"}},r.a.createElement(cr.a,{id:"theme-picker-dialog",className:e.dialogTitle},"Change Theme"),r.a.createElement(Hn.a,null,r.a.createElement("div",{className:e.dialogContent},r.a.createElement("div",null,i&&"light"===i.palette.type?r.a.createElement(Je.a,{onClick:x,variant:"contained",color:"primary",startIcon:r.a.createElement(dr.a,null)},"Light Theme"):r.a.createElement(Je.a,{onClick:x,variant:"contained",color:"primary",startIcon:r.a.createElement(mr.a,null)},"Dark Theme")),r.a.createElement("div",{className:e.selector},r.a.createElement(Rn.a,{onClick:function(){return v("primary")},className:e.colorPreviewSelector},r.a.createElement("div",{className:e.colorPreviewSelectorIcon,style:{backgroundColor:E?E[500]:""}}),E&&"primary"===f&&r.a.createElement("div",{className:e.active,style:{border:"5px solid ".concat(E[900])}},r.a.createElement(fr.a,{style:{color:E[900]}}))),r.a.createElement(Qe.a,{className:e.title,onClick:function(){return v("primary")}},"Primary")),r.a.createElement("div",{className:e.selector},r.a.createElement(Rn.a,{onClick:function(){return v("secondary")},className:e.colorPreviewSelector},r.a.createElement("div",{className:e.colorPreviewSelectorIcon,style:{backgroundColor:w?w[500]:""}}),w&&"secondary"===f&&r.a.createElement("div",{className:e.active,style:{border:"5px solid ".concat(w[900])}},r.a.createElement(fr.a,{style:{color:w[900]}}))),r.a.createElement(Qe.a,{className:e.title,onClick:function(){return v("secondary")}},"Secondary")),r.a.createElement("div",{className:e.colorPreviews},$r.map((function(t,a){return r.a.createElement("div",{key:a,className:e.colorPreview},r.a.createElement(Rn.a,{onClick:function(){return function(e){switch(f){case"primary":O(e),w&&N(e,w);break;case"secondary":C(e),E&&N(E,e)}}(t)},style:{backgroundColor:t[500]},className:e.colorPreviewButton}))}))))),r.a.createElement(pa.a,null,r.a.createElement("div",{className:e.grow}),r.a.createElement(Je.a,{onClick:I,color:"secondary",variant:"text"},"Close"))))},ti=Object(n.memo)((function(){var e=ai();return r.a.createElement("div",{className:e.root},r.a.createElement(Gn.a,{position:"fixed",color:"primary"},r.a.createElement(Ln.a,null,r.a.createElement(Qe.a,{className:e.title,variant:"h6",color:"inherit"},"O",r.a.createElement("span",{className:e.oniColor},"N"),"I",r.a.createElement("span",{className:e.onicColor},"C")),r.a.createElement("div",{className:e.flex},r.a.createElement(An.a,{title:"Home"},r.a.createElement(la.a,{component:Ae.b,to:"/",color:"inherit","aria-label":"Home"},r.a.createElement(Un.a,null))),r.a.createElement(An.a,{title:"About"},r.a.createElement(la.a,{component:Ae.b,to:"/about",color:"inherit","aria-label":"Help"},r.a.createElement(Jn.a,null)))),r.a.createElement("div",{className:e.rightNav},r.a.createElement(Ve.c,null,r.a.createElement(Ve.a,{exact:!0,path:"/geysers",render:function(){return r.a.createElement(or,null)}}),r.a.createElement(Ve.a,{exact:!0,path:"/food",render:function(){return r.a.createElement(lr,null)}}),r.a.createElement(Ve.a,{exact:!0,path:"/buildings",render:function(){return r.a.createElement(ur,null)}}),r.a.createElement(Ve.a,{path:"/",render:function(){return r.a.createElement(Xn,null)}})),r.a.createElement(ei,null)))))})),ai=Object(Ue.a)((function(e){return{root:{flexGrow:1},title:{marginRight:e.spacing(),fontWeight:"bold"},flex:{flex:1},rightNav:{display:"flex",flexWrap:"wrap"},menuButton:{marginLeft:-12,marginRight:20},oniColor:{color:"#FD6B6B"},onicColor:{color:"#00E3E3"}}})),ni=ti,ri=Object(n.memo)((function(){var e=ii();return r.a.createElement("div",{className:e.root},r.a.createElement(Ae.a,null,r.a.createElement(ni,null),r.a.createElement(Ve.c,null,r.a.createElement(Ve.a,{path:"/about",component:_e}),r.a.createElement(Ve.a,{path:"/",component:Fn}))))})),ii=Object(Ue.a)((function(){return{root:{height:"100%"}}})),ui=ri,li=function(){var e=Me(),t=Object(o.a)(e,2),a=t[0],i=t[1].getTheme,u=a.theme;Object(n.useEffect)((function(){i()}),[i]);var c=Object(Fe.a)(Object(l.a)(Object(l.a)({},u),{},{typography:{fontFamily:['"Nova Square"',"sans-serif"].join(", ")}}));return r.a.createElement(Ge.a,{theme:c},r.a.createElement(Le.a,null),r.a.createElement(ui,null))},oi=a(146);Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));oi.load({google:{families:["Nova Square:400","sans-serif"]}}),u.a.render(r.a.createElement(De,null,r.a.createElement(li,null)),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()}))}},[[163,1,2]]]); //# sourceMappingURL=main.25585b34.chunk.js.map