"use client"; import { discountPercentageAtom, formulaResultAtom, initialPriceAtom, numberOfDaysAtom, numberOfDevicesAtom, } from "@/lib/atoms"; import { useAtom } from "jotai"; import { useEffect } from "react"; import NumberInput from "./number-input"; export default function PriceCalculator() { const [initialPrice, setInitialPrice] = useAtom(initialPriceAtom); const [discountPercentage, setDiscountPercentage] = useAtom( discountPercentageAtom, ); const [numberOfDevices, setNumberOfDevices] = useAtom(numberOfDevicesAtom); const [numberOfDays, setNumberOfDays] = useAtom(numberOfDaysAtom); const [formulaResult, setFormulaResult] = useAtom(formulaResultAtom); useEffect(() => { const basePrice = initialPrice + (numberOfDevices - 1) * discountPercentage; setFormulaResult( `Price for ${numberOfDevices} device(s) over ${numberOfDays} day(s): MVR ${basePrice.toFixed(2)}`, ); }, [ initialPrice, discountPercentage, numberOfDevices, numberOfDays, setFormulaResult, ]); return (

Price Calculator

{/* Initial Price Input */} setInitialPrice(value)} /> {/* Number of Devices Input */} setNumberOfDevices(value)} /> {/* Number of Days Input */} setNumberOfDays(value)} /> {/* Discount Percentage Input */} setDiscountPercentage(value)} />
); }