{"version":3,"sources":["components/Footer.js","components/forms/DemographicForm.js","components/ToggleDisplayed.js","components/Overlay.js","calculations/calculationConstants.js","calculations/calculations.js","components/forms/HomeEnergyForm.js","components/forms/TransportationForm.js","components/forms/FoodForm.js","components/forms/MaterialsForm.js","components/forms/ServicesForm.js","api.js","components/forms/CheckoutForm.js","components/forms/FootprintBar.js","components/PrevNextButton.js","components/VerticalTabs.js","App.js","reportWebVitals.js","index.js"],"names":["Footer","_jsx","children","Container","Row","Col","className","DemographicForm","_ref","demographicInfo","setDemographicInfo","_useState","useState","numPeople","_useState2","_slicedToArray","numberOfPeople","setNumPeople","_useState3","zip","_useState4","zipCode","setZip","useEffect","_jsxs","Form","Group","as","controlId","Label","Control","type","min","placeholder","onChange","e","target","value","ToggleDisplayed","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","state","isHidden","toggleHidden","bind","_assertThisInitialized","_createClass","key","this","setState","Check","id","switchId","label","condition","class","Component","Overlay","prompt","title","message","popover","Popover","Title","Content","OverlayTrigger","trigger","placement","overlay","Button","variant","dollars","gallons","therms","kwh","thouCubicFt","diet_heavy_meat_eater","diet_medium_meat_eater","diet_light_meat_eater","diet_pescatarian","diet_vegetarian","diet_vegan","misc_category_Pharma","misc_category_Textile","misc_category_Paper","misc_category_Technology","misc_category_Vehicles","misc_category_Furniture","misc_category_Hospitality","misc_category_Telephone","misc_category_Banking","misc_category_Entertainment","defaultUsage","constants_dict","AC_electricity_percent","Average_FO_CO2_emissions","Average_elec_CO2_emissions","BTU_per_1000cf_NG","BTU_per_gallon_FO","BTU_per_gallon_propane","BTU_per_kWh","CO2_C_ratio","EF_fuel_oil_MMBtu","EF_fuel_oil_gallon","EF_natural_gas","EF_natural_gas_therm","EF_passenger_vehicle","EF_propane","ENERGYSTAR_fridge_kWh","HHV_fuel_oil","HHV_natural_gas","HHV_propane","HH_size","NG_CO2_annual_emissions","Natural_gas_cost_1000CF","Natural_gas_cost_therm","OilFuelRate","average_mpg","average_waste_emissions","boiler_replacement_cost_savings","boiler_replacement_savings_FO","boiler_replacement_savings_NG","computer_energy_monitor_off","computer_energy_off","computer_energy_sleep_monitor_off","computer_energy_sleep_off","computer_sleep_savings","conventional_fridge_kWh","conversion_1000cf_to_therm","conversion_QBtu_to_Btu","conversion_Tg_to_lb","cost_per_kWh","cost_per_mile","dryer_energy","fridge_replacement_kWh_savings","fuel_oil_cost","gas_cost_gallon","glass_recycling_avoided_emissions","green_power_premium","heating_percent_NG","heating_percent_electricity","heating_percent_fuel_oil","heating_percent_propane","kWh_per_load_laundry","lamp_cost_savings","lamp_kWh_savings","mag_recycling_avoided_emissions","metal_recycling_avoided_emissions","monthly_FO_consumption","monthly_NG_Consumption","monthly_elec_consumption","monthly_propane_consumption","newspaper_recycling_avoided_emissions","nonCO2_vehicle_emissions_ratio","plastic_recycling_avoided_emissions","propane_cost","thermostat_cooling_savings","thermostat_heating_savings","vehicle_efficiency_improvements","window_replacement_cost_savings","window_replacement_energy_savings","short_flight_factor","medium_flight_factor","long_flight_factor","short_flight_mileage","medium_flight_mileage","long_flight_mileage","calculatePropaneFootprint","propaneUnits","propaneUsage","parseFloat","prefix","Math","round","calculateNaturalGasFootprint","naturalGasUnits","naturalGasUsage","calculateFuelOilFootprint","fuelOilUnits","fuelOilUsage","calculateElectricityFootprint","electricityUnits","electricityUsage","greenEnergyPercentage","calculateFlightsFootprint","numberOfFlights","length","emissions_factor","mileage","calculateFoodFootprint","diet","annualSpend","calculateCarFootprint","mpg","weeklyMileage","calculateMiscFootprint","misc_category","HomeEnergyForm","homeEnergyFootprint","setHomeEnergyFootprint","setPropaneUnits","setPropaneUsage","_useState5","_useState6","setElectricityUnits","_useState7","_useState8","setElectricityUsage","_useState9","_useState10","setGreenEnergyPercentage","_useState11","_useState12","setNaturalGasUnits","_useState13","_useState14","setNaturalGasUsage","_useState15","_useState16","setFuelOilUnits","_useState17","_useState18","setFuelOilUsage","_useState19","_useState20","propaneContribution","setPropaneContribution","_useState21","_useState22","electricityContribution","setElectricityContribution","_useState23","_useState24","naturalGasContribution","setNaturalGasContribution","_useState25","_useState26","fuelOilContribution","setFuelOilContribution","p","size","block","TransportationForm","transportationFootprint","setTransportationFootprint","numCars","setNumCars","carOneWeeklyMileage","setCarOneWeeklyMileage","carOneMpg","setCarOneMpg","carOneFootprint","setCarOneFootprint","carTwoWeeklyMileage","setCarTwoWeeklyMileage","carTwoMpg","setCarTwoMpg","carTwoFootprint","setCarTwoFootprint","carThreeWeeklyMileage","setCarThreeWeeklyMileage","carThreeMpg","setCarThreeMpg","carThreeFootprint","setCarThreeFootprint","carFourWeeklyMileage","setCarFourWeeklyMileage","carFourMpg","setCarFourMpg","carFourFootprint","setCarFourFootprint","_useState27","_useState28","carFiveWeeklyMileage","setCarFiveWeeklyMileage","_useState29","_useState30","carFiveMpg","setCarFiveMpg","_useState31","_useState32","carFiveFootprint","setCarFiveFootprint","_useState33","_useState34","shortFlightCount","setShortFlightCount","_useState35","_useState36","shortFlightContribution","setShortFlightContribution","_useState37","_useState38","mediumFlightCount","setMediumFlightCount","_useState39","_useState40","mediumFlightContribution","setMediumFlightContribution","_useState41","_useState42","longFlightCount","setLongFlightCount","_useState43","_useState44","longFlightContribution","setLongFlightContribution","sumCars","slice","reduce","a","b","FoodForm","foodFootprint","setFoodFootprint","setDiet","setAnnualSpend","foodContribution","setFoodContribution","onKeyPress","preventDefault","ListGroup","Item","MaterialsForm","materialsUseFootprint","setMaterialsUseFootprint","recycleFootprint","setRecycleFootprint","PharmaSpend","setPharmaSpend","TextileSpend","setTextileSpend","PaperSpend","setPaperSpend","TechnologySpend","setTechnologySpend","VehiclesSpend","setVehiclesSpend","FurnitureSpend","setFurnitureSpend","PharmaContribution","setPharmaContribution","TextileContribution","setTextileContribution","PaperContribution","setPaperContribution","TechnologyContribution","setTechnologyContribution","VehiclesContribution","setVehiclesContribution","FurnitureContribution","setFurnitureContribution","recycleGlassContribution","setRecycleGlassContribution","recycleAluminumContribution","setRecycleAluminumContribution","recyclePlasticContribution","setPlasticContribution","recyclePaperContribution","setRecyclePaperContribution","recycleGlass","setRecycleGlass","recycleAluminum","setRecycleAluminum","recyclePlastic","setRecyclePlastic","recyclePaper","setRecyclePaper","recycling","sm","span","offset","ServicesForm","servicesFootprint","setServicesFootprint","HospitalitySpend","setHospitalitySpend","TelephoneSpend","setTelephoneSpend","BankingSpend","setBankingSpend","EntertainmentSpend","setEntertainmentSpend","HospitalityContribution","setHospitalityContribution","TelephoneContribution","setTelephoneContribution","BankingContribution","setBankingContribution","EntertainmentContribution","setEntertainmentContribution","API_URL","api","axios","create","baseURL","headers","ApiService","data","arguments","undefined","console","log","post","concat","CheckoutForm","monthlyOffsetCost","totalFootprint","show","setShow","waiting","setWaiting","modalHeading","setModalHeading","modalText","setModalText","email","setEmail","handleSubmit","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","event","dict","breakdown","wrap","_context","prev","next","JSON","stringify","saveFootprintInfo","then","response","catch","error","stop","_x","apply","onSubmit","style","backgroundColor","Modal","onHide","Header","closeButton","Body","Spinner","animation","name","required","src","paypalExpress","allowpaymentrequest","seamless","frameborder","scrolling","height","width","FootprintBar","labels","datasets","borderColor","borderWidth","graphState","setGraphState","Bar","options","display","text","fontSize","legend","position","PrevNextButton","viewChange","tabEventKey","prevDestination","nextDestination","fluid","onClick","tabChanger","visibility","VerticalTabs","tabKey","setTabKey","handleTabSelect","Tab","activeKey","Nav","Link","eventKey","onSelect","Pane","App","setTotalFootprint","setMonthlyOffsetCost","max","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","document","getElementById"],"mappings":"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","file":"static/js/main.89493337.chunk.js","sourcesContent":["import React from 'react'\nimport { Container, Row, Col } from 'react-bootstrap'\nfunction Footer() {\n return (\n \n )\n}\n\nexport default Footer\n","import React, { useState, useEffect } from \"react\";\nimport { Form, Col } from \"react-bootstrap\";\nfunction DemographicForm({ demographicInfo, setDemographicInfo }) {\n const [numberOfPeople, setNumPeople] = useState(demographicInfo.numPeople);\n const [zipCode, setZip] = useState(demographicInfo.zip);\n useEffect(() => {\n if (\n demographicInfo.numPeople !== numberOfPeople ||\n demographicInfo.zip !== zipCode\n ) {\n setDemographicInfo({ numPeople: numberOfPeople, zip: zipCode });\n }\n });\n\n return (\n
\n

\n \n \n Number of people in your household\n {\n setNumPeople(e.target.value);\n }}\n />\n \n \n Zip Code\n {\n setZip(e.target.value);\n }}\n >\n \n \n
\n );\n}\n\nexport default DemographicForm;\n","import React, { Component } from \"react\";\nimport { Form } from \"react-bootstrap\";\n\nexport default class ToggleDisplayed extends Component {\n constructor(props) {\n super(props);\n this.state = {\n isHidden: true,\n };\n this.toggleHidden = this.toggleHidden.bind(this);\n }\n toggleHidden() {\n this.setState({\n isHidden: !this.state.isHidden,\n });\n }\n render() {\n return (\n
\n \n {!this.state.isHidden && (\n
{this.props.children}
\n )}\n
\n );\n }\n}\n","import React from \"react\";\nimport { OverlayTrigger, Button, Popover } from \"react-bootstrap\";\nfunction Overlay({ prompt, title, message }) {\n const popover = (\n \n {title}\n {message}\n \n );\n return (\n \n \n \n );\n}\n\nexport default Overlay;\n","export const CALCULATE = \"CALCULATE\";\nexport const dollars = \"Dollars\";\nexport const gallons = \"Gallons\";\nexport const therms = \"Therms\";\nexport const kwh = \"kWh\";\nexport const thouCubicFt = \"Thousand Cubic Feet\";\n\nexport const diet_heavy_meat_eater = \"Heavy Meat Eater\"\nexport const diet_medium_meat_eater = \"Medium Meat Eater\"\nexport const diet_light_meat_eater = \"Light Meat Eater\"\nexport const diet_pescatarian = \"Pescatarian\"\nexport const diet_vegetarian = \"Vegetarian\"\nexport const diet_vegan = \"Vegan\"\n\nexport const misc_category_Pharma = \"Pharma\"\nexport const misc_category_Textile = \"Textile\"\nexport const misc_category_Paper = \"Paper\"\nexport const misc_category_Technology = \"Technology\"\nexport const misc_category_Vehicles = \"Vehicles\"\nexport const misc_category_Furniture = \"Furniture\"\nexport const misc_category_Hospitality = \"Hospitality\"\nexport const misc_category_Telephone = \"Telephone\"\nexport const misc_category_Banking = \"Banking\"\nexport const misc_category_Entertainment = \"Entertainment\"\n\nexport const yes = true;\nexport const no = false;\nexport const defaultUsage = 0;\nexport const constants_dict = {\n AC_electricity_percent: 0.14,\n Average_FO_CO2_emissions: 12460.0,\n Average_elec_CO2_emissions: 14019.997724,\n BTU_per_1000cf_NG: 1023000.0,\n BTU_per_gallon_FO: 138691.09,\n BTU_per_gallon_propane: 91335.94,\n BTU_per_kWh: 3412.0,\n CO2_C_ratio: 3.67,\n EF_fuel_oil_MMBtu: 163.05,\n EF_fuel_oil_gallon: 22.61,\n EF_natural_gas: 119.58,\n EF_natural_gas_therm: 11.68890913124,\n EF_passenger_vehicle: 19.6,\n EF_propane: 12.43,\n ENERGYSTAR_fridge_kWh: 488.0,\n HHV_fuel_oil: 138691.09,\n HHV_natural_gas: 1023000.0,\n HHV_propane: 91335.94,\n HH_size: 2.57,\n NG_CO2_annual_emissions: 7892.0,\n Natural_gas_cost_1000CF: 10.68,\n Natural_gas_cost_therm: 1.04,\n OilFuelRate: 0.0,\n average_mpg: 21.6,\n average_waste_emissions: 692.0,\n boiler_replacement_cost_savings: 78.34,\n boiler_replacement_savings_FO: 1056.0,\n boiler_replacement_savings_NG: 728.0,\n computer_energy_monitor_off: 66.5,\n computer_energy_off: 143.0,\n computer_energy_sleep_monitor_off: 31.7,\n computer_energy_sleep_off: 70.7,\n computer_sleep_savings: 107.1,\n conventional_fridge_kWh: 810.0,\n conversion_1000cf_to_therm: 10.23,\n conversion_QBtu_to_Btu: 1000000000000000.0,\n conversion_Tg_to_lb: 2204622620.0,\n cost_per_kWh: 0.1188,\n cost_per_mile: 0.1964,\n dryer_energy: 769.0,\n fridge_replacement_kWh_savings: 322.0,\n fuel_oil_cost: 4.02,\n gas_cost_gallon: 3.68,\n glass_recycling_avoided_emissions: -25.39,\n green_power_premium: 0.02,\n heating_percent_NG: 0.63,\n heating_percent_electricity: 0.09,\n heating_percent_fuel_oil: 0.87,\n heating_percent_propane: 0.7,\n kWh_per_load_laundry: 0.96,\n lamp_cost_savings: 4.0,\n lamp_kWh_savings: 33.0,\n mag_recycling_avoided_emissions: -27.46,\n metal_recycling_avoided_emissions: -89.38,\n monthly_FO_consumption: 46.0,\n monthly_NG_Consumption: 5500.0,\n monthly_elec_consumption: 943.0,\n monthly_propane_consumption: 39.0,\n newspaper_recycling_avoided_emissions: -113.14,\n nonCO2_vehicle_emissions_ratio: 1.01,\n plastic_recycling_avoided_emissions: -35.56,\n propane_cost: 2.47,\n thermostat_cooling_savings: 0.06,\n thermostat_heating_savings: 0.03,\n vehicle_efficiency_improvements: 0.04,\n window_replacement_cost_savings: 150.0,\n window_replacement_energy_savings: 25210000.0,\n short_flight_factor: 0.560583398,\n medium_flight_factor: 0.462658703,\n long_flight_factor:0.374668398,\n short_flight_mileage: 450,\n medium_flight_mileage: 1200,\n long_flight_mileage: 2000,\n diet_heavy_meat_eater: 0.62,\n diet_medium_meat_eater: 0.49,\n diet_light_meat_eater: 0.41,\n diet_pescatarian: 0.34,\n diet_vegetarian: 0.33,\n diet_vegan: 0.25,\n misc_category_Pharma: 1.83,\n misc_category_Textile: 0.28,\n misc_category_Paper: 0.19,\n misc_category_Technology: 0.81,\n misc_category_Vehicles: 0.21,\n misc_category_Furniture: 0.22,\n misc_category_Hospitality: 0.26,\n misc_category_Telephone: 0.17,\n misc_category_Banking: 0.28,\n misc_category_Entertainment: 0.22,\n};\n","import {\n constants_dict,\n dollars,\n thouCubicFt,\n therms,\n gallons,\n diet_heavy_meat_eater,\n diet_medium_meat_eater,\n diet_light_meat_eater,\n diet_pescatarian,\n diet_vegetarian,\n diet_vegan,\n misc_category_Pharma,\n misc_category_Textile,\n misc_category_Paper,\n misc_category_Technology,\n misc_category_Vehicles,\n misc_category_Furniture,\n misc_category_Hospitality,\n misc_category_Telephone,\n misc_category_Banking,\n misc_category_Entertainment,\n} from \"./calculationConstants\";\n\nexport function calculatePropaneFootprint(propaneUnits, propaneUsage) {\n propaneUsage = parseFloat(propaneUsage);\n let prefix = 0;\n if (propaneUnits === dollars) {\n prefix = 1 / constants_dict.propane_cost;\n } else if (propaneUnits === gallons) {\n prefix = 1;\n }\n return Math.round(prefix * (propaneUsage * constants_dict.EF_propane * 12));\n}\n\nexport function calculateNaturalGasFootprint(naturalGasUnits, naturalGasUsage) {\n naturalGasUsage = parseFloat(naturalGasUsage);\n let prefix = 0;\n if (naturalGasUnits === dollars) {\n prefix =\n (1 / constants_dict.Natural_gas_cost_1000CF) *\n constants_dict.EF_natural_gas;\n } else if (naturalGasUnits === thouCubicFt) {\n prefix = constants_dict.EF_natural_gas;\n } else if (naturalGasUnits === therms) {\n prefix = constants_dict.EF_natural_gas_therm;\n }\n return Math.round(prefix * (naturalGasUsage * 12));\n}\n\nexport function calculateFuelOilFootprint(fuelOilUnits, fuelOilUsage) {\n fuelOilUsage = parseFloat(fuelOilUsage);\n let prefix = 0;\n if (fuelOilUnits === dollars) {\n prefix = 1 / constants_dict.fuel_oil_cost;\n } else if (fuelOilUnits === gallons) {\n prefix = 1;\n }\n return Math.round(\n prefix * (fuelOilUsage * constants_dict.EF_fuel_oil_gallon * 12)\n );\n}\n\nexport function calculateElectricityFootprint(\n electricityUnits,\n electricityUsage,\n greenEnergyPercentage\n) {\n // todo: figure out the right ef value\n let EF_electricity = 1;\n electricityUsage = parseFloat(electricityUsage);\n greenEnergyPercentage = parseFloat(greenEnergyPercentage) / 100;\n let prefix = 0;\n if (electricityUnits === dollars) {\n prefix = 1 / constants_dict.cost_per_kWh;\n } else if (electricityUnits) {\n prefix = 1;\n }\n return greenEnergyPercentage > 0\n ? Math.round(\n prefix *\n (electricityUsage * EF_electricity * 12) *\n (1 - greenEnergyPercentage)\n )\n : Math.round(prefix * (electricityUsage * EF_electricity * 12));\n}\n\nexport function calculateRecycleGlassFootprint(recycling, numPeople) {\n if (recycling) {\n return Math.round(\n numPeople * constants_dict.glass_recycling_avoided_emissions\n );\n } else {\n return 0;\n }\n}\nexport function calculateRecycleMetalFootprint(recycling, numPeople) {\n if (recycling) {\n return Math.round(\n numPeople * constants_dict.metal_recycling_avoided_emissions\n );\n } else {\n return 0;\n }\n}\nexport function calculateRecyclePlasticFootprint(recycling, numPeople) {\n if (recycling) {\n return Math.round(\n numPeople * constants_dict.plastic_recycling_avoided_emissions\n );\n } else {\n return 0;\n }\n}\nexport function calculateRecyclePaperFootprint(recycling, numPeople) {\n if (recycling) {\n return Math.round(\n numPeople * constants_dict.newspaper_recycling_avoided_emissions\n );\n } else {\n return 0;\n }\n}\n\nexport function calculateFlightsFootprint(numberOfFlights, length) {\n var emissions_factor;\n var mileage;\n switch(length){\n case \"short\":\n emissions_factor = constants_dict.short_flight_factor;\n mileage = constants_dict.short_flight_mileage;\n break;\n case \"medium\":\n emissions_factor = constants_dict.medium_flight_factor;\n mileage = constants_dict.medium_flight_mileage;\n break;\n case \"long\":\n emissions_factor = constants_dict.long_flight_factor;\n mileage = constants_dict.medium_flight_mileage;\n break;\n default:\n break;\n }\n return Math.round(mileage * emissions_factor * numberOfFlights);\n}\n\nexport function calculateFoodFootprint(diet, annualSpend) {\n var emissions_factor;\n switch(diet){\n case diet_heavy_meat_eater:\n emissions_factor = constants_dict.diet_heavy_meat_eater;\n break;\n case diet_medium_meat_eater:\n emissions_factor = constants_dict.diet_medium_meat_eater;\n break;\n case diet_light_meat_eater:\n emissions_factor = constants_dict.diet_light_meat_eater;\n break;\n case diet_pescatarian:\n emissions_factor = constants_dict.diet_pescatarian;\n break;\n case diet_vegetarian:\n emissions_factor = constants_dict.diet_vegetarian;\n break;\n case diet_vegan:\n emissions_factor = constants_dict.diet_vegan;\n break;\n default:\n break;\n }\n return Math.round((annualSpend/1000.0) * emissions_factor * 2204);\n}\n\nexport function calculateCarFootprint(mpg, weeklyMileage) {\n return Math.round(\n ((weeklyMileage * 52) / mpg) *\n constants_dict.EF_passenger_vehicle *\n constants_dict.nonCO2_vehicle_emissions_ratio\n );\n}\n\nexport function calculateMiscFootprint(misc_category, annualSpend){\n var emissions_factor;\n switch(misc_category){\n case misc_category_Pharma:\n emissions_factor = constants_dict.misc_category_Pharma;\n break;\n case misc_category_Textile:\n emissions_factor = constants_dict.misc_category_Textile;\n break;\n case misc_category_Paper:\n emissions_factor = constants_dict.misc_category_Paper;\n break;\n case misc_category_Technology:\n emissions_factor = constants_dict.misc_category_Technology;\n break;\n case misc_category_Vehicles:\n emissions_factor = constants_dict.misc_category_Vehicles;\n break;\n case misc_category_Furniture:\n emissions_factor = constants_dict.misc_category_Furniture;\n break;\n case misc_category_Hospitality:\n emissions_factor = constants_dict.misc_category_Hospitality;\n break;\n case misc_category_Telephone:\n emissions_factor = constants_dict.misc_category_Telephone;\n break;\n case misc_category_Banking:\n emissions_factor = constants_dict.misc_category_Banking;\n break;\n case misc_category_Entertainment:\n emissions_factor = constants_dict.misc_category_Entertainment;\n break;\n default:\n break;\n }\n return Math.round((annualSpend/1000.0) * emissions_factor * 2204);\n}\n\n","import React, { useState, useEffect } from \"react\";\nimport { Form, Col, Button } from \"react-bootstrap\";\n//import { OverlayTrigger } from \"react-bootstrap\";\n//Above line is meant to temporarily suppress compilation warning.\n//When OverlayTrigger is needed, insert into statement on line 2.\nimport ToggleDisplayed from \"../ToggleDisplayed\";\nimport Overlay from \"../Overlay\";\nimport {\n dollars,\n thouCubicFt,\n therms,\n gallons,\n kwh,\n defaultUsage,\n} from \"../../calculations/calculationConstants\";\nimport {\n calculatePropaneFootprint,\n calculateElectricityFootprint,\n calculateNaturalGasFootprint,\n calculateFuelOilFootprint,\n} from \"../../calculations/calculations\";\nfunction HomeEnergyForm({ homeEnergyFootprint, setHomeEnergyFootprint }) {\n const [propaneUnits, setPropaneUnits] = useState(dollars);\n const [propaneUsage, setPropaneUsage] = useState(defaultUsage);\n const [electricityUnits, setElectricityUnits] = useState(dollars);\n const [electricityUsage, setElectricityUsage] = useState(defaultUsage);\n const [greenEnergyPercentage, setGreenEnergyPercentage] = useState(\n defaultUsage\n );\n const [naturalGasUnits, setNaturalGasUnits] = useState(dollars);\n const [naturalGasUsage, setNaturalGasUsage] = useState(defaultUsage);\n const [fuelOilUnits, setFuelOilUnits] = useState(dollars);\n const [fuelOilUsage, setFuelOilUsage] = useState(defaultUsage);\n\n const [propaneContribution, setPropaneContribution] = useState(0);\n const [electricityContribution, setElectricityContribution] = useState(0);\n const [naturalGasContribution, setNaturalGasContribution] = useState(0);\n const [fuelOilContribution, setFuelOilContribution] = useState(0);\n\n useEffect(() => {\n setHomeEnergyFootprint(\n propaneContribution +\n electricityContribution +\n naturalGasContribution +\n fuelOilContribution\n );\n });\n\n return (\n
\n

\n\n \n \n \n \n Units\n {\n setElectricityUnits(e.target.value);\n setElectricityContribution(\n calculateElectricityFootprint(\n e.target.value,\n electricityUsage,\n greenEnergyPercentage\n )\n );\n }}\n >\n \n \n \n \n \n Monthly Usage\n {\n setElectricityUsage(e.target.value);\n setElectricityContribution(\n calculateElectricityFootprint(\n electricityUnits,\n e.target.value,\n greenEnergyPercentage\n )\n );\n }}\n />\n \n \n \n \n \n What % of your electricity comes from Green Energy?\n \n \n {\n setGreenEnergyPercentage(e.target.value);\n setElectricityContribution(\n calculateElectricityFootprint(\n electricityUnits,\n electricityUsage,\n e.target.value\n )\n );\n }}\n />\n \n \n {electricityContribution > 0 && (\n
\n \n Electricity Contribution: {electricityContribution} pounds\n \n
\n )}\n
\n\n \n \n \n Units\n {\n setNaturalGasUnits(e.target.value);\n setNaturalGasContribution(\n calculateNaturalGasFootprint(\n naturalGasUnits,\n e.target.value\n )\n );\n }}\n >\n \n \n \n \n \n \n Monthly Usage\n {\n setNaturalGasUsage(e.target.value);\n setNaturalGasContribution(\n calculateNaturalGasFootprint(\n naturalGasUnits,\n e.target.value\n )\n );\n }}\n />\n \n \n {naturalGasContribution > 0 && (\n
\n \n Natural Gas Contribution: {naturalGasContribution} pounds\n \n
\n )}\n
\n setPropaneUsage(0)}\n >\n \n \n Units\n {\n setPropaneUnits(e.target.value);\n let p = calculatePropaneFootprint(\n e.target.value,\n propaneUsage\n );\n setPropaneContribution(p);\n }}\n >\n \n \n \n \n \n Monthly Usage\n {\n setPropaneUsage(e.target.value);\n setPropaneContribution(\n calculatePropaneFootprint(propaneUnits, e.target.value)\n );\n }}\n />\n \n \n {propaneContribution > 0 && (\n
\n \n Propane Contribution: {propaneContribution} pounds\n \n
\n )}\n \n \n \n \n \n Units\n {\n setFuelOilUnits(e.target.value);\n setFuelOilContribution(\n calculateFuelOilFootprint(e.target.value, fuelOilUsage)\n );\n }}\n >\n \n \n \n \n \n Monthly Usage\n {\n setFuelOilUsage(e.target.value);\n setFuelOilContribution(\n calculateFuelOilFootprint(fuelOilUnits, e.target.value)\n );\n }}\n />\n \n \n {fuelOilContribution > 0 && (\n
\n \n Fuel Oil Contribution: {fuelOilContribution} pounds\n \n
\n )}\n
\n
\n {homeEnergyFootprint > 0 && (\n \n )}\n
\n );\n}\n\nexport default HomeEnergyForm;\n","import React, { useState, useEffect } from \"react\";\nimport { Form, Col, Button } from \"react-bootstrap\";\nimport { calculateCarFootprint, calculateFlightsFootprint } from \"../../calculations/calculations\";\nimport ToggleDisplayed from \"../ToggleDisplayed\";\n\n\n\nfunction TransportationForm({\n transportationFootprint,\n setTransportationFootprint,\n}) {\n const [numCars, setNumCars] = useState(0);\n const [carOneWeeklyMileage, setCarOneWeeklyMileage] = useState(0);\n const [carOneMpg, setCarOneMpg] = useState(25);\n const [carOneFootprint, setCarOneFootprint] = useState(0);\n const [carTwoWeeklyMileage, setCarTwoWeeklyMileage] = useState(0);\n const [carTwoMpg, setCarTwoMpg] = useState(25);\n const [carTwoFootprint, setCarTwoFootprint] = useState(0);\n const [carThreeWeeklyMileage, setCarThreeWeeklyMileage] = useState(0);\n const [carThreeMpg, setCarThreeMpg] = useState(25);\n const [carThreeFootprint, setCarThreeFootprint] = useState(0);\n const [carFourWeeklyMileage, setCarFourWeeklyMileage] = useState(0);\n const [carFourMpg, setCarFourMpg] = useState(25);\n const [carFourFootprint, setCarFourFootprint] = useState(0);\n const [carFiveWeeklyMileage, setCarFiveWeeklyMileage] = useState(0);\n const [carFiveMpg, setCarFiveMpg] = useState(25);\n const [carFiveFootprint, setCarFiveFootprint] = useState(0);\n\n const [shortFlightCount, setShortFlightCount] = useState(0);\n const [shortFlightContribution, setShortFlightContribution] = useState(0);\n\n const [mediumFlightCount, setMediumFlightCount] = useState(0);\n const [mediumFlightContribution, setMediumFlightContribution] = useState(0);\n\n const [longFlightCount, setLongFlightCount] = useState(0);\n const [longFlightContribution, setLongFlightContribution] = useState(0);\n\n useEffect(() => {\n setCarOneFootprint(calculateCarFootprint(carOneMpg, carOneWeeklyMileage));\n }, [carOneMpg, carOneWeeklyMileage]);\n useEffect(() => {\n setCarTwoFootprint(calculateCarFootprint(carTwoMpg, carTwoWeeklyMileage));\n }, [carTwoMpg, carTwoWeeklyMileage]);\n useEffect(() => {\n setCarThreeFootprint(\n calculateCarFootprint(carThreeMpg, carThreeWeeklyMileage)\n );\n }, [carThreeMpg, carThreeWeeklyMileage]);\n useEffect(() => {\n setCarFourFootprint(\n calculateCarFootprint(carFourMpg, carFourWeeklyMileage)\n );\n }, [carFourMpg, carFourWeeklyMileage]);\n useEffect(() => {\n setCarFiveFootprint(\n calculateCarFootprint(carFiveMpg, carFiveWeeklyMileage)\n );\n }, [carFiveMpg, carFiveWeeklyMileage]);\n\n useEffect(() => {\n let sumCars = [\n carOneFootprint,\n carTwoFootprint,\n carThreeFootprint,\n carFourFootprint,\n carFiveFootprint,\n ]\n .slice(0, numCars)\n .reduce((a, b) => a + b, 0);\n setTransportationFootprint(sumCars + shortFlightContribution + mediumFlightContribution + longFlightContribution);\n }, [setTransportationFootprint,\n numCars,\n carOneFootprint,\n carTwoFootprint,\n carThreeFootprint,\n carFourFootprint,\n carFiveFootprint,\n shortFlightContribution, \n mediumFlightContribution, \n longFlightContribution\n ]);\n\n return (\n
\n
\n

Driving

\n

\n\n \n \n How many fossil-fuel consuming cars do you have?\n {\n setNumCars(e.target.value);\n }}\n >\n \n \n \n \n \n \n \n \n \n {numCars >= 1 && (\n \n \n \n Car #1 Weekly Mileage\n {\n setCarOneWeeklyMileage(e.target.value);\n }}\n >\n \n \n Car #1 MPG\n {\n setCarOneMpg(e.target.value);\n }}\n />\n \n \n {carOneFootprint > 0 && (\n
\n Car #1 Contribution: {carOneFootprint} pounds\n
\n )}\n
\n )}\n {numCars >= 2 && (\n \n \n \n Car #2 Weekly Mileage\n {\n setCarTwoWeeklyMileage(e.target.value);\n }}\n >\n \n \n Car #2 MPG\n {\n setCarTwoMpg(e.target.value);\n }}\n />\n \n \n {carTwoFootprint > 0 && (\n
\n Car #2 Contribution: {carTwoFootprint} pounds\n
\n )}\n
\n )}\n {numCars >= 3 && (\n \n \n \n Car #3 Weekly Mileage\n {\n setCarThreeWeeklyMileage(e.target.value);\n }}\n >\n \n \n Car #3 MPG\n {\n setCarThreeMpg(e.target.value);\n }}\n />\n \n \n {carThreeFootprint > 0 && (\n
\n Car #3 Contribution: {carThreeFootprint} pounds\n
\n )}\n
\n )}\n {numCars >= 4 && (\n \n \n \n Car #4 Weekly Mileage\n {\n setCarFourWeeklyMileage(e.target.value);\n }}\n >\n \n \n Car #4 MPG\n {\n setCarFourMpg(e.target.value);\n }}\n />\n \n \n {carFourFootprint > 0 && (\n
\n Car #4 Contribution: {carFourFootprint} pounds\n
\n )}\n
\n )}\n {numCars >= 5 && (\n \n \n \n Car #5 Weekly Mileage\n {\n setCarFiveWeeklyMileage(e.target.value);\n }}\n >\n \n \n Car #5 MPG\n {\n setCarFiveMpg(e.target.value);\n }}\n />\n \n \n {carFiveFootprint > 0 && (\n
\n Car #5 Contribution: {carFiveFootprint} pounds\n
\n )}\n
\n )}\n\n

Flights

\n

\n \n \n How many short flights (900 miles or less) do you take annually?\n {\n setShortFlightCount(e.target.value);\n setShortFlightContribution( \n calculateFlightsFootprint(\n e.target.value,\n \"short\"\n )\n );\n }}\n />\n \n \n How many medium flights (between 901 and 1499 miles) do you take annually?\n {\n setMediumFlightCount(e.target.value);\n setMediumFlightContribution(\n calculateFlightsFootprint(\n e.target.value,\n \"medium\"\n )\n );\n }}\n />\n \n \n How many long flights (1500 miles or more) do you take annually?\n {\n setLongFlightCount(e.target.value);\n setLongFlightContribution( \n calculateFlightsFootprint(\n e.target.value,\n \"long\"\n )\n );\n }}\n />\n \n \n {transportationFootprint > 0 && (\n \n )}\n
\n
\n );\n}\n\nexport default TransportationForm;\n","import React, { useState, useEffect } from \"react\";\nimport { Form, Col, Button, ListGroup } from \"react-bootstrap\";\nimport {\n diet_heavy_meat_eater,\n diet_medium_meat_eater,\n diet_light_meat_eater,\n diet_pescatarian,\n diet_vegetarian,\n diet_vegan,\n} from \"../../calculations/calculationConstants\";\nimport {\n calculateFoodFootprint,\n} from \"../../calculations/calculations\";\nfunction FoodForm({ foodFootprint, setFoodFootprint }) {\n\n const [diet, setDiet] = useState(diet_heavy_meat_eater);\n const [annualSpend, setAnnualSpend] = useState(0);\n const [foodContribution, setFoodContribution] = useState(0);\n\n useEffect(() => {\n setFoodFootprint(\n foodContribution\n );\n }, [setFoodFootprint, foodContribution]);\n\n return (\n
\n

\n \n \n What is most common diet type in your household?\n {\n setDiet(e.target.value);\n setFoodContribution(\n calculateFoodFootprint(\n e.target.value,\n annualSpend\n )\n );\n }}\n >\n \n \n \n \n \n \n \n \n \n Annual dollar amount spent on Food \n {\n setAnnualSpend(e.target.value);\n setFoodContribution( \n calculateFoodFootprint(\n diet,\n e.target.value\n )\n );\n }}\n onKeyPress={(e) => { e.key === 'Enter' && e.preventDefault(); }}\n as={'input'}\n />\n \n \n Categorizing Meat Consumption:\n \n Heavy Meat Eater: 100g or more of meat per day (on average)\n Medium Meat Eater: 51g to 99g of meat per day (on average)\n Low Meat Eater: 50g or less of meat per day (on average)\n\n {foodFootprint > 0 && (\n \n )}\n
\n );\n}\n\nexport default FoodForm;\n","import { Form, Col, Row, Button } from \"react-bootstrap\";\nimport React, { useState, useEffect } from \"react\";\nimport {\n calculateMiscFootprint,\n calculateRecycleGlassFootprint,\n calculateRecycleMetalFootprint,\n calculateRecyclePlasticFootprint,\n calculateRecyclePaperFootprint,\n} from \"../../calculations/calculations\";\nimport { \n misc_category_Pharma,\n misc_category_Textile,\n misc_category_Paper,\n misc_category_Technology,\n misc_category_Vehicles,\n misc_category_Furniture,\n} from \"../../calculations/calculationConstants\";\n\n\nfunction MaterialsForm({\n materialsUseFootprint,\n setMaterialsUseFootprint,\n recycleFootprint,\n setRecycleFootprint,\n demographicInfo,\n}) {\n const [PharmaSpend, setPharmaSpend] = useState(0);\n const [TextileSpend, setTextileSpend] = useState(0);\n const [PaperSpend, setPaperSpend] = useState(0);\n const [TechnologySpend, setTechnologySpend] = useState(0);\n const [VehiclesSpend, setVehiclesSpend] = useState(0);\n const [FurnitureSpend, setFurnitureSpend] = useState(0);\n\n const [PharmaContribution, setPharmaContribution] = useState(0);\n const [TextileContribution, setTextileContribution] = useState(0);\n const [PaperContribution, setPaperContribution] = useState(0);\n const [TechnologyContribution, setTechnologyContribution] = useState(0);\n const [VehiclesContribution, setVehiclesContribution] = useState(0);\n const [FurnitureContribution, setFurnitureContribution] = useState(0);\n\n \n useEffect(() => {\n setMaterialsUseFootprint(\n PharmaContribution +\n TextileContribution +\n PaperContribution +\n TechnologyContribution +\n VehiclesContribution +\n FurnitureContribution\n );\n }, [setMaterialsUseFootprint, PharmaContribution, TextileContribution, PaperContribution, TechnologyContribution, VehiclesContribution, FurnitureContribution]);\n\n\n const [recycleGlassContribution, setRecycleGlassContribution] = useState(0);\n const [recycleAluminumContribution, setRecycleAluminumContribution] = useState(0);\n const [recyclePlasticContribution, setPlasticContribution] = useState(0);\n const [recyclePaperContribution, setRecyclePaperContribution] = useState(0);\n\n const [recycleGlass, setRecycleGlass] = useState(false);\n const [recycleAluminum, setRecycleAluminum] = useState(false);\n const [recyclePlastic, setRecyclePlastic] = useState(false);\n const [recyclePaper, setRecyclePaper] = useState(false);\n\n useEffect(() => {\n setRecycleGlassContribution(\n calculateRecycleGlassFootprint(recycleGlass, demographicInfo.numPeople)\n );\n }, [recycleGlass, demographicInfo]);\n useEffect(() => {\n setRecycleAluminumContribution(\n calculateRecycleMetalFootprint(recycleAluminum, demographicInfo.numPeople)\n );\n }, [recycleAluminum, demographicInfo]);\n useEffect(() => {\n setPlasticContribution(\n calculateRecyclePlasticFootprint(recyclePlastic, demographicInfo.numPeople)\n );\n }, [recyclePlastic, demographicInfo]);\n useEffect(() => {\n setRecyclePaperContribution(\n calculateRecyclePaperFootprint(recyclePaper, demographicInfo.numPeople)\n );\n }, [recyclePaper, demographicInfo]);\n\n useEffect(() => {\n setRecycleFootprint(\n recycleGlassContribution +\n recycleAluminumContribution +\n recyclePlasticContribution +\n recyclePaperContribution\n );\n }, [\n recycleGlassContribution,\n recycleAluminumContribution,\n recyclePlasticContribution,\n recyclePaperContribution,\n ]);\n\n\n return (\n
\n

\n \n \n Annual dollar amount spent on Pharamaceutical Purchases\n {\n setPharmaSpend(e.target.value);\n setPharmaContribution( \n calculateMiscFootprint(\n misc_category_Pharma,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Textile Purchases (clothes, shoes, etc)\n {\n setTextileSpend(e.target.value);\n setTextileContribution(\n calculateMiscFootprint(\n misc_category_Textile,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Paper Purchases (e.g. books, magazines, newspapers)\n {\n setPaperSpend(e.target.value);\n setPaperContribution( \n calculateMiscFootprint(\n misc_category_Paper,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Technology Purchases(e.g. computers, TVs, cell phones, stereo equipment etc.)\n {\n setTechnologySpend(e.target.value);\n setTechnologyContribution( \n calculateMiscFootprint(\n misc_category_Technology,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Vehicles Purchases (car, truck, motorcycle, etc. Excludes fuel)\n {\n setVehiclesSpend(e.target.value);\n setVehiclesContribution( \n calculateMiscFootprint(\n misc_category_Vehicles,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Furniture Purchases and Other Manufactured Goods\n {\n setFurnitureSpend(e.target.value);\n setFurnitureContribution( \n calculateMiscFootprint(\n misc_category_Furniture,\n e.target.value\n )\n );\n }}\n />\n \n \n {materialsUseFootprint > 0 && (\n \n )}\n

\n\n \n
\n {\" \"}\n Select any of the following materials that your household recycles:\n
\n \n \n setRecycleGlass(!recycleGlass)}\n />\n \n \n {recycleGlassContribution !== 0 && (\n
\n \n Recycling Glass Contribution: {recycleGlassContribution} pounds\n \n
\n )}\n \n \n setRecycleAluminum(!recycleAluminum)}\n />\n \n \n {recycleAluminumContribution !== 0 && (\n
\n \n Recycling Aluminum Contribution: {recycleAluminumContribution} pounds\n \n
\n )}\n \n \n setRecyclePlastic(!recyclePlastic)}\n />\n \n \n {recyclePlasticContribution !== 0 && (\n
\n \n Recycling Plastic Contribution: {recyclePlasticContribution} pounds\n \n
\n )}\n \n \n setRecyclePaper(!recyclePaper)}\n />\n \n \n {recyclePaperContribution !== 0 && (\n
\n \n Recycling Paper Contribution: {recyclePaperContribution} pounds\n \n
\n )}\n
\n {recycleFootprint !== 0 && (\n \n )}\n
\n );\n}\n\nexport default MaterialsForm;\n","import React, { useState, useEffect } from \"react\";\nimport { Form, Col, Button } from \"react-bootstrap\";\nimport {\n calculateMiscFootprint,\n} from \"../../calculations/calculations\";\nimport {\n misc_category_Hospitality,\n misc_category_Telephone,\n misc_category_Banking,\n misc_category_Entertainment,\n} from \"../../calculations/calculationConstants\";\n\nfunction ServicesForm({ servicesFootprint, setServicesFootprint }) {\n const [HospitalitySpend, setHospitalitySpend] = useState(0);\n const [TelephoneSpend, setTelephoneSpend] = useState(0);\n const [BankingSpend, setBankingSpend] = useState(0);\n const [EntertainmentSpend, setEntertainmentSpend] = useState(0);\n\n const [HospitalityContribution, setHospitalityContribution] = useState(0);\n const [TelephoneContribution, setTelephoneContribution] = useState(0);\n const [BankingContribution, setBankingContribution] = useState(0);\n const [EntertainmentContribution, setEntertainmentContribution] = useState(0);\n \n useEffect(() => {\n setServicesFootprint(\n HospitalityContribution +\n TelephoneContribution +\n BankingContribution +\n EntertainmentContribution\n );\n }, [setServicesFootprint, HospitalityContribution, TelephoneContribution, BankingContribution, EntertainmentContribution]);\n\n return (\n
\n

\n \n \n Annual dollar amount spent on Hospitality Purchases (eating out, hotels, etc.)\n {\n setHospitalitySpend(e.target.value);\n setHospitalityContribution( \n calculateMiscFootprint(\n misc_category_Hospitality,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Telephone Purchases (cell phone plan costs)\n {\n setTelephoneSpend(e.target.value);\n setTelephoneContribution( \n calculateMiscFootprint(\n misc_category_Telephone,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Banking Purchases (mortgage and loan interest payments)\n {\n setBankingSpend(e.target.value);\n setBankingContribution( \n calculateMiscFootprint(\n misc_category_Banking,\n e.target.value\n )\n );\n }}\n />\n \n \n Annual dollar amount spent on Entertainment Purchases (recreational, cultural and sporting activities)\n {\n setEntertainmentSpend(e.target.value);\n setEntertainmentContribution( \n calculateMiscFootprint(\n misc_category_Entertainment,\n e.target.value\n )\n );\n }}\n />\n \n \n {servicesFootprint > 0 && (\n \n )}\n
\n );\n}\n\nexport default ServicesForm;\n","import axios from \"axios\";\n//export const API_URL = \"http://localhost:8000\";\nexport const API_URL = \"https://www.regenallfootprintapp.com\";\nexport const api = axios.create({\n baseURL: API_URL,\n headers: {\n \"Content-type\": \"application/json\",\n },\n});\nexport default class ApiService {\n static saveFootprintInfo(data = {}) {\n console.log(\"the data\");\n console.log(data);\n return api.post(`${API_URL}/payments/save-footprint-data/`, data);\n }\n}\n","import React, {useState } from \"react\";\nimport ApiService from \"../../api\";\nimport { Modal, Spinner } from \"react-bootstrap\";\n\nconst CheckoutForm = ({ \n monthlyOffsetCost,\n homeEnergyFootprint,\n transportationFootprint,\n materialsUseFootprint,\n recycleFootprint,\n foodFootprint,\n servicesFootprint,\n totalFootprint\n}) => {\n\n const [error, setError] = useState(null);\n const [show, setShow] = useState(false);\n const [waiting, setWaiting] = useState(false);\n const [modalHeading, setModalHeading] = useState(\"\");\n const [modalText, setModalText] = useState(\"\");\n const handleClose = () => setShow(false);\n // const handleChange = (event) => {\n // if (event.error) {\n // setError(event.error.message);\n // } else {\n // setError(null);\n // }\n // };\n\n\n const [email, setEmail] = useState(\"\");\n const handleSubmit = async (event) => {\n event.preventDefault();\n\n setModalHeading(\"Processing\");\n setModalText(\"Please wait while we send your request.\");\n setWaiting(true);\n setShow(true);\n\n console.log(\"\");\n var dict = {}\n var breakdown = {}\n\n breakdown['totalFootprint'] = totalFootprint;\n breakdown['homeEnergyFootprint'] = homeEnergyFootprint;\n breakdown['transportationFootprint'] = transportationFootprint;\n breakdown['materialsUseFootprint'] = materialsUseFootprint;\n breakdown['recycleFootprint'] = recycleFootprint;\n breakdown['foodFootprint'] = foodFootprint;\n breakdown['servicesFootprint'] = servicesFootprint;\n\n dict['email'] = email\n dict['monthly_offset_cost'] = monthlyOffsetCost;\n dict['breakdown'] = JSON.stringify(breakdown)\n\n ApiService.saveFootprintInfo(dict)\n .then((response) => {\n console.log(response.data);\n setModalHeading(\"Success\");\n setModalText(\"Thank you for your request!\");\n setWaiting(false);\n })\n .catch((error) => {\n console.log(error);\n setModalHeading(\"Success\");\n setModalText(\"Thank you for your request!\");\n setWaiting(false);\n });\n\n //TODO: revert to signalling an error. We are not going to signal the error right now, because we're \n // actually saving information to the database successfully, but getting a bad request status code\n // in the response from the backend. We need to resolve that and then revisit this.\n // .catch((error) => {\n // console.log(error);\n // setModalHeading(\"Error\");\n // setModalText(\"Sorry, there was an error processing your request.\");\n // setWaiting(false);\n // });\n };\n\n return (\n \n
\n
\n \n \n {modalHeading}\n \n \n {modalText}{\" \"}\n {waiting && }\n \n \n \n
\n
\n
\n

\n Based on your annual carbon footprint of {totalFootprint} lbs., we estimate that it would cost{\" \"}\n ${monthlyOffsetCost} to offset one month's\n footprint, or ${monthlyOffsetCost * 12} annually.\n

\n
\n
\n

\n Go Carbon Neutral today by offsetting your full annual carbon footprint and receive a FREE Regenall yard sign!\n
\n

\n
Enter your email address and click the button below -- then scroll down to buy an offset!
\n
\n
\n {\n setEmail(event.target.value);\n }}\n />\n
\n \n
\n
\n \n
\n \n );\n};\nexport default CheckoutForm;\n","import React, { useEffect, useState } from \"react\";\nimport { Bar } from \"react-chartjs-2\";\n\nfunction FootprintBar({\n homeEnergyFootprint,\n transportationFootprint,\n materialsUseFootprint,\n recycleFootprint,\n foodFootprint,\n servicesFootprint,\n}) {\n const [graphState, setGraphState] = useState({\n labels: [\"Home Energy\", \"Transportation\", \"Material Use\",\"Recycling\", \"Food\", \"Services\"],\n datasets: [\n {\n label: \"Pounds of Carbon Dioxide\",\n backgroundColor: \"rgba(75,192,192,1)\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: 2,\n data: [homeEnergyFootprint, transportationFootprint, materialsUseFootprint, recycleFootprint, foodFootprint, servicesFootprint],\n },\n ],\n });\n useEffect(() => {\n setGraphState({\n labels: [\"Home Energy\", \"Transportation\", \"Material Use\", \"Recycling\", \"Food\", \"Services\"],\n datasets: [\n {\n label: \"Pounds of Carbon Dioxide\",\n backgroundColor: \"rgba(75,192,192,1)\",\n borderColor: \"rgba(0,0,0,1)\",\n borderWidth: 2,\n data: [\n homeEnergyFootprint,\n transportationFootprint,\n materialsUseFootprint,\n recycleFootprint,\n foodFootprint,\n servicesFootprint\n ],\n },\n ],\n });\n }, [homeEnergyFootprint, transportationFootprint, materialsUseFootprint, recycleFootprint, foodFootprint, servicesFootprint]);\n\n return (\n
\n \n
\n );\n}\n\nexport default FootprintBar;\n","import React from \"react\";\nimport { Row, Col, Button, Container } from \"react-bootstrap\";\n\nfunction PrevNextButton(props) {\n function viewChange() {\n var prev = null;\n var next = null;\n switch(props.tabEventKey) {\n case \"demographic\" :\n next = \"home-energy\";\n break;\n case \"home-energy\" :\n prev = \"demographic\";\n next = \"transportation\";\n break;\n case \"transportation\" :\n prev = \"home-energy\";\n next = \"food\";\n break;\n case \"food\" :\n prev = \"transportation\"\n next = \"materials\";\n break;\n case \"materials\" :\n prev = \"food\";\n next = \"services\"\n break;\n case \"services\" :\n prev = \"materials\";\n next = \"annualFootprint\"\n break;\n case \"annualFootprint\" :\n prev = \"services\";\n next = \"purchase\"\n break;\n case \"purchase\" :\n prev = \"annualFootprint\";\n break;\n default: \n }\n return {prevDestination:prev, nextDestination:next}\n }\n return (\n \n \n \n \n \n \n \n \n \n \n )\n}\n\nexport default PrevNextButton;","import React, { useState } from \"react\";\nimport { Tab, Row, Col, Nav, Button } from \"react-bootstrap\";\n\nimport DemographicForm from \"./forms/DemographicForm\";\nimport HomeEnergyForm from \"./forms/HomeEnergyForm\";\nimport TransportationForm from \"./forms/TransportationForm\";\nimport FoodForm from \"./forms/FoodForm\"\nimport MaterialsForm from \"./forms/MaterialsForm\";\nimport ServicesForm from \"./forms/ServicesForm\"\nimport CheckoutForm from \"./forms/CheckoutForm\";\nimport FootprintBar from \"./forms/FootprintBar\";\n\nimport PrevNextButton from \"./PrevNextButton\";\nimport \"../verticalTabs.css\";\n\n\nfunction VerticalTabs({\n totalFootprint,\n homeEnergyFootprint,\n setHomeEnergyFootprint,\n demographicInfo,\n setDemographicInfo,\n transportationFootprint,\n setTransportationFootprint,\n materialsUseFootprint,\n setMaterialsUseFootprint,\n recycleFootprint,\n setRecycleFootprint,\n foodFootprint,\n setFoodFootprint,\n servicesFootprint,\n setServicesFootprint,\n monthlyOffsetCost\n}) {\n const [tabKey, setTabKey] = useState(\"demographic\");\n function handleTabSelect(key) {\n setTabKey(key);\n }\n return (\n \n

Carbon Footprint Calculator

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

\n {(totalFootprint > 0 && (\n
\n \n \n
\n )) || (\n

\n Please fill out the required information to see your annual CO\n 2 footprint.\n

\n )}\n \n
\n \n

\n {(totalFootprint > 0 && (\n
\n\n \n
\n )) || (\n

\n Please fill out the questionnaire before purchasing an offset.\n

\n )}\n \n
\n
\n \n
\n
\n );\n}\n\nexport default VerticalTabs;\n","import { useState, useEffect } from \"react\";\nimport { Container } from \"react-bootstrap\";\nimport Footer from \"./components/Footer\";\nimport VerticalTabs from \"./components/VerticalTabs\";\n\n\nfunction App() {\n const [totalFootprint, setTotalFootprint] = useState(0);\n const [demographicInfo, setDemographicInfo] = useState({\n numPeople: 1,\n zip: 17603,\n });\n\n const [homeEnergyFootprint, setHomeEnergyFootprint] = useState(0);\n\n const [transportationFootprint, setTransportationFootprint] = useState(0);\n const [foodFootprint, setFoodFootprint] = useState(0);\n const [servicesFootprint, setServicesFootprint] = useState(0);\n const [recycleFootprint, setRecycleFootprint] = useState(0);\n const [materialsUseFootprint, setMaterialsUseFootprint] = useState(0);\n\n const [monthlyOffsetCost, setMonthlyOffsetCost] = useState(1);\n useEffect(() => {\n // we are charging $75 / ton. 75/2000 = .0375; this is the price per pound.\n setMonthlyOffsetCost(\n Math.max(1, Math.round((totalFootprint / 12) * 0.0375))\n );\n }, [totalFootprint]);\n\n useEffect(() => {\n setTotalFootprint(\n homeEnergyFootprint + materialsUseFootprint + recycleFootprint + transportationFootprint + foodFootprint + servicesFootprint\n );\n }, [homeEnergyFootprint, materialsUseFootprint, recycleFootprint, transportationFootprint, foodFootprint, servicesFootprint]);\n return (\n
\n
\n \n \n \n
\n
\n );\n}\n\nexport default App;\n","const reportWebVitals = onPerfEntry => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\nimport \"./bootstrap.min.css\";\nimport App from \"./App\";\nimport reportWebVitals from \"./reportWebVitals\";\n\nReactDOM.render(\n ,\n document.getElementById(\"root\")\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}