inventory.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. console.log(merchant);
  2. let fullList = [];
  3. for(let item of merchant.inventory){
  4. fullList.push({
  5. name: item.ingredient.name,
  6. category: item.ingredient.category,
  7. quantity: item.quantity,
  8. unit: item.ingredient.unitType
  9. });
  10. }
  11. let tbody = document.querySelector("tbody");
  12. let renderIngredients = (items = fullList)=>{
  13. while(tbody.hasChildNodes()){
  14. tbody.removeChild(tbody.firstChild);
  15. }
  16. for(let item of items){
  17. let row = document.createElement("tr");
  18. tbody.appendChild(row);
  19. let name = document.createElement("td");
  20. name.innerText = item.name;
  21. row.appendChild(name);
  22. let category = document.createElement("td");
  23. category.innerText = item.category;
  24. row.appendChild(category);
  25. let quantity = document.createElement("td");
  26. quantity.innerText = item.quantity;
  27. row.appendChild(quantity);
  28. let unit = document.createElement("td");
  29. unit.innerText = item.unit;
  30. row.appendChild(unit);
  31. }
  32. }
  33. let sortIngredients = (items = fullList)=>{
  34. items.sort((a, b) => (a.name > b.name) ? 1 : -1)
  35. renderIngredients();
  36. }
  37. let filter = ()=>{
  38. let items = [];
  39. let searchString = document.querySelector("#filter").value;
  40. for(let item of fullList){
  41. if(item.name.toLowerCase().includes(searchString)){
  42. items.push(item);
  43. }
  44. }
  45. renderIngredients(items);
  46. }
  47. sortIngredients();