const grades = [ "پیش دبستان", "اول", "دوم", "سوم", "چهارم", "پنجم", "ششم", "هفتم", "هشتم", "نهم", "دهم", "یازدهم", "دوازدهم", ]; class filter { productsPage = (products, options) => { const { grade, subject, sort } = options; if (grade.length > 0 || subject.length > 0 || sort) { localStorage.setItem("filter", "ON"); } let finalSort; let byGradeFilter = []; if (grade.length > 0) { grade.map((item1) => { for (let i = 0; i < products.length; i++) { if (grades[products[i].gradeId] === item1) { byGradeFilter.push(products[i]); } } }); } else { byGradeFilter = products; } let bySubjectFilter = []; if (subject.length > 0) { subject.map((item1) => { for (let i = 0; i < byGradeFilter.length; i++) { if (byGradeFilter[i].name === item1) { bySubjectFilter.push(byGradeFilter[i]); } } }); } else { bySubjectFilter = byGradeFilter; } if (sort === "گران ترین") { finalSort = bySubjectFilter.sort((item1, item2) => { return item1.product[0].price - item2.product[0].price; }); } else { finalSort = bySubjectFilter; } }; } const _filter = new filter(); export default _filter;