From 5329b1fd16d0b8940f9526b523676dfb1cdbf317 Mon Sep 17 00:00:00 2001 From: MikunoNaka Date: Thu, 24 Jun 2021 15:53:42 +0530 Subject: switching to typescript --- src/components/Form/Items/AddNewItemForm.js | 203 ---------------------------- 1 file changed, 203 deletions(-) delete mode 100644 src/components/Form/Items/AddNewItemForm.js (limited to 'src/components/Form/Items/AddNewItemForm.js') diff --git a/src/components/Form/Items/AddNewItemForm.js b/src/components/Form/Items/AddNewItemForm.js deleted file mode 100644 index 37167fd..0000000 --- a/src/components/Form/Items/AddNewItemForm.js +++ /dev/null @@ -1,203 +0,0 @@ -/* - * OpenBills - Self hosted browser app to generate and keep track of simple invoices - * Version - 0 - * Licensed under the MIT license - https://opensource.org/licenses/MIT - * - * Copyright (c) 2021 Vidhu Kant Sharma -*/ - -import React, { useState } from "react"; -import "./../Form.scss"; - -const AddNewItemForm = (props) => { - const [itemNameValue, setItemNameValue] = useState(""); - const [itemDescValue, setItemDescValue] = useState(""); - const [itemPriceValue, setItemPriceValue] = useState(0.00); - const [itemDiscountValue, setItemDiscountValue] = useState(0.00); - const [itemGSTValue, setItemGSTValue] = useState(props.defGSTValue); - const [itemQtyValue, setItemQtyValue] = useState(1); - const [itemHSNValue, setItemHSNValue] = useState(0); - - // to be handled by DocumentInfo - // check if client is in same state - // and apply cgst+sgst or igst accordingly - const inState = true; - - const enterItemNamePrompt = "start typing here"; - const registerItemPrompt = "add new"; - const emptyItemNames = [enterItemNamePrompt, registerItemPrompt, ""]; - - // set description and price if match found in DB - const applyItemInfo = (i) => { - setItemDescValue(i.Description); - setItemPriceValue(i.Price); - setItemHSNValue(i.HSN); - setItemGSTValue(i.GST); - } - - // check the item name value and do stuff accordingly - const setItemInfo = (itemName) => - (props.savedItems === null || itemName === registerItemPrompt) - ? props.registerItemFormVisibility(true) - : props.savedItems.some((i) => - itemName === i.Model.toLowerCase() && applyItemInfo(i)) - - const resetAllValues = () => { - setItemNameValue(""); - setItemDescValue(""); - setItemQtyValue(1); - setItemPriceValue(1); - setItemDiscountValue(0); - setItemHSNValue(0); - setItemGSTValue(props.defGSTValue); - } - - return ( -
-
{ - event.preventDefault(); - const newInvoiceItem = { - "Model": itemNameValue, - "Description": itemDescValue, - "Quantity": parseInt(itemQtyValue), - "UnitPrice": parseFloat(itemPriceValue), - "TotalPrice": parseFloat(itemPriceValue * itemQtyValue), - "Discount": parseInt(itemDiscountValue), - "HSN": parseInt(itemHSNValue), - - // this also checks if igst applies or not - "sgst": inState ? parseInt(itemGSTValue) / 2 : "", - "cgst": inState ? parseInt(itemGSTValue) / 2 : "", - "igst": inState ? "" : parseInt(itemGSTValue) - }; - console.log(newInvoiceItem); - props.addItem(newInvoiceItem); - resetAllValues(); - } - }> -
- - - -
- -
- - - - - - - - - -
- -
- props.registerPersonFormVisibility(true)} - /> - - props.registerItemFormVisibility(true)} - /> - - - - - - -
-
-
- ) -} - -export default AddNewItemForm; -- cgit v1.2.3